Quote price lists

Price lists used by Estimating quotes. The wider Estimating configuration surface (about 40 tables) is a module pass of its own and is not exposed here.

The object#

FieldTypeDescription
idread-onlyintegerNolaPro id.
stdsizeidintegerStdsizeid. Id only.
worktypeidintegerReference to worktypes, by id. Write either this or worktype.
worktypestring(100)Code for the referenced worktype, instead of the id.
namestring(50)Price list name.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
maxinkside1integerMost inks the price list covers on side 1.
maxinkside2integerMost inks the price list covers on side 2.
trimchargepermpercutmoneystring(2dp)Stored as decimal(8,2).
trimminchargemoneystring(2dp)Stored as decimal(8,2).
qtyperboxqtystring(0dp)Quantity, 0 decimal places, as a string. Stored as decimal(0dp).
notestextNotes. Stored as blob, no practical length limit.
point2idintegerPoint2id. Id only.
covereach_blackinandoutmoneystring(5dp)Stored as decimal(19,5).
covereach_coloroutblackinmoneystring(5dp)Stored as decimal(19,5).
covereach_colorinandoutmoneystring(5dp)Stored as decimal(19,5).
costper_nocovermoneystring(5dp)Stored as decimal(19,5).
covereach_colorinblackoutmoneystring(5dp)Stored as decimal(19,5).
noinkchargeinteger1 when ink is not charged separately on this price list.
scrap_percentnumberstring(2dp)Numeric string, 2 decimal places. Not money - do not apply currency rounding.
scrap_sheets_maxintegerMaximum scrap sheets allowed into the price calculation.
externalidstring(100)Your own key. Scoped to your company.

Endpoints#

POST/estquotepricelists/batch 207

Create many.

Requires scope estimating:write.

Parameters
NameInTypeNotes
Body array
FieldTypeDescription
idread-onlyintegerNolaPro id.
stdsizeidintegerStdsizeid. Id only.
worktypeidintegerReference to worktypes, by id. Write either this or worktype.
worktypestring(100)Code for the referenced worktype, instead of the id.
namestring(50)Price list name.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
maxinkside1integerMost inks the price list covers on side 1.
maxinkside2integerMost inks the price list covers on side 2.
trimchargepermpercutmoneystring(2dp)Stored as decimal(8,2).
trimminchargemoneystring(2dp)Stored as decimal(8,2).
qtyperboxqtystring(0dp)Quantity, 0 decimal places, as a string. Stored as decimal(0dp).
notestextNotes. Stored as blob, no practical length limit.
point2idintegerPoint2id. Id only.
covereach_blackinandoutmoneystring(5dp)Stored as decimal(19,5).
covereach_coloroutblackinmoneystring(5dp)Stored as decimal(19,5).
covereach_colorinandoutmoneystring(5dp)Stored as decimal(19,5).
costper_nocovermoneystring(5dp)Stored as decimal(19,5).
covereach_colorinblackoutmoneystring(5dp)Stored as decimal(19,5).
noinkchargeinteger1 when ink is not charged separately on this price list.
scrap_percentnumberstring(2dp)Numeric string, 2 decimal places. Not money - do not apply currency rounding.
scrap_sheets_maxintegerMaximum scrap sheets allowed into the price calculation.
externalidstring(100)Your own key. Scoped to your company.
curl -X POST \
  'https://acme.nolapro.com/!/api/v2/estquotepricelists/batch' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '[
    {
        "stdsizeid": 104,
        "worktypeid": 104,
        "worktype": "Example worktype",
        "name": "Example name",
        "maxinkside1": 1,
        "maxinkside2": 1
    }
]'
GET/estquotepricelists 200403

List quote price lists.

Requires scope estimating:read.

Parameters
NameInTypeNotes
namequerystringPartial match, case insensitive.
cancelquerystringDefaults to false. Pass true or any.
modifiedsincequerystringRFC 3339 UTC timestamp. Returns only records changed since then, including cancelled ones - so cancel defaults to any rather than false when this is used. The response carries _meta.synced_through; store it and send it back next time.
externalidquerystringExact match on your own key.
includequerystringComma-separated extras to embed. Only custom_fields is available: the extra fields this install has defined on the record. Off by default, and an unrecognised value is refused rather than ignored. See Conventions.
When it fails
StatusCodeMeaning
403insufficient_scopeToken lacks read scope.
curl \
  'https://acme.nolapro.com/!/api/v2/estquotepricelists' \
  -H 'Authorization: Bearer $NP_TOKEN'
POST/estquotepricelists 201400

Create.

Requires scope estimating:write.

Parameters
NameInTypeNotes
Body
FieldTypeDescription
idread-onlyintegerNolaPro id.
stdsizeidintegerStdsizeid. Id only.
worktypeidintegerReference to worktypes, by id. Write either this or worktype.
worktypestring(100)Code for the referenced worktype, instead of the id.
namestring(50)Price list name.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
maxinkside1integerMost inks the price list covers on side 1.
maxinkside2integerMost inks the price list covers on side 2.
trimchargepermpercutmoneystring(2dp)Stored as decimal(8,2).
trimminchargemoneystring(2dp)Stored as decimal(8,2).
qtyperboxqtystring(0dp)Quantity, 0 decimal places, as a string. Stored as decimal(0dp).
notestextNotes. Stored as blob, no practical length limit.
point2idintegerPoint2id. Id only.
covereach_blackinandoutmoneystring(5dp)Stored as decimal(19,5).
covereach_coloroutblackinmoneystring(5dp)Stored as decimal(19,5).
covereach_colorinandoutmoneystring(5dp)Stored as decimal(19,5).
costper_nocovermoneystring(5dp)Stored as decimal(19,5).
covereach_colorinblackoutmoneystring(5dp)Stored as decimal(19,5).
noinkchargeinteger1 when ink is not charged separately on this price list.
scrap_percentnumberstring(2dp)Numeric string, 2 decimal places. Not money - do not apply currency rounding.
scrap_sheets_maxintegerMaximum scrap sheets allowed into the price calculation.
externalidstring(100)Your own key. Scoped to your company.
When it fails
StatusCodeMeaning
400invalid_requestA required field was missing.
curl -X POST \
  'https://acme.nolapro.com/!/api/v2/estquotepricelists' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '{
    "stdsizeid": 104,
    "worktypeid": 104,
    "worktype": "Example worktype",
    "name": "Example name",
    "maxinkside1": 1,
    "maxinkside2": 1
}'
Response 201
{
    "stdsizeid": 104,
    "worktypeid": 104,
    "worktype": "Example worktype",
    "name": "Example name",
    "maxinkside1": 1,
    "maxinkside2": 1
}
GET/estquotepricelists/{id} 200404

Retrieve one record.

Requires scope estimating:read.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
includequerystringComma-separated extras to embed. Only custom_fields is available: the extra fields this install has defined on the record. Off by default, and an unrecognised value is refused rather than ignored. See Conventions.
When it fails
StatusCodeMeaning
404not_foundNo record with that id.
curl \
  'https://acme.nolapro.com/!/api/v2/estquotepricelists/104' \
  -H 'Authorization: Bearer $NP_TOKEN'
Response 200
{
    "stdsizeid": 104,
    "worktypeid": 104,
    "worktype": "Example worktype",
    "name": "Example name",
    "maxinkside1": 1,
    "maxinkside2": 1
}
PATCH/estquotepricelists/{id} 200404

Update.

Requires scope estimating:write.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
Body
FieldTypeDescription
idread-onlyintegerNolaPro id.
stdsizeidintegerStdsizeid. Id only.
worktypeidintegerReference to worktypes, by id. Write either this or worktype.
worktypestring(100)Code for the referenced worktype, instead of the id.
namestring(50)Price list name.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
entrydateread-onlystringWhen the record was created.
lastchangedateread-onlystringLast modification. Drives modifiedsince.
maxinkside1integerMost inks the price list covers on side 1.
maxinkside2integerMost inks the price list covers on side 2.
trimchargepermpercutmoneystring(2dp)Stored as decimal(8,2).
trimminchargemoneystring(2dp)Stored as decimal(8,2).
qtyperboxqtystring(0dp)Quantity, 0 decimal places, as a string. Stored as decimal(0dp).
notestextNotes. Stored as blob, no practical length limit.
point2idintegerPoint2id. Id only.
covereach_blackinandoutmoneystring(5dp)Stored as decimal(19,5).
covereach_coloroutblackinmoneystring(5dp)Stored as decimal(19,5).
covereach_colorinandoutmoneystring(5dp)Stored as decimal(19,5).
costper_nocovermoneystring(5dp)Stored as decimal(19,5).
covereach_colorinblackoutmoneystring(5dp)Stored as decimal(19,5).
noinkchargeinteger1 when ink is not charged separately on this price list.
scrap_percentnumberstring(2dp)Numeric string, 2 decimal places. Not money - do not apply currency rounding.
scrap_sheets_maxintegerMaximum scrap sheets allowed into the price calculation.
externalidstring(100)Your own key. Scoped to your company.
When it fails
StatusCodeMeaning
404not_foundNo record with that id.
curl -X PATCH \
  'https://acme.nolapro.com/!/api/v2/estquotepricelists/104' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '{
    "stdsizeid": 104,
    "worktypeid": 104,
    "worktype": "Example worktype",
    "name": "Example name",
    "maxinkside1": 1,
    "maxinkside2": 1
}'
Response 200
{
    "stdsizeid": 104,
    "worktypeid": 104,
    "worktype": "Example worktype",
    "name": "Example name",
    "maxinkside1": 1,
    "maxinkside2": 1
}
DELETE/estquotepricelists/{id} 200404

Cancel.

Requires scope estimating:cancel.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
When it fails
StatusCodeMeaning
404not_foundNo record with that id.
curl -X DELETE \
  'https://acme.nolapro.com/!/api/v2/estquotepricelists/104' \
  -H 'Authorization: Bearer $NP_TOKEN'
Response 200
{
    "stdsizeid": 104,
    "worktypeid": 104,
    "worktype": "Example worktype",
    "name": "Example name",
    "maxinkside1": 1,
    "maxinkside2": 1
}