Work subtypes

Subtypes under a work type.

The object#

FieldTypeDescription
id_worksubtyperead-onlyintegerPrimary key of the work subtype (this table is keyed id_worksubtype, not id).
id_worktypeintegerThe work type this subtype belongs to.
namestring(100)Name of the work subtype.
purposestring(255)What the work subtype is used for.
num_partsintegerNumber of parts the work applies to (multi-part forms).
vendedintegerNon-zero when the work is vended - purchased outside rather than produced in-house.
createdatestringWhen the change happened, not when we sent it. A retry two hours later still carries the original time.
id_user_createread-onlyintegerUser who created the record.
lastrevisedateread-onlystringWhen the record was last revised.
id_user_reviseread-onlyintegerUser who last revised the record.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
externalidstring(100)Your own key. Scoped to your company.

Endpoints#

POST/worksubtypes/batch 207

Create many.

Requires scope setup:write.

Parameters
NameInTypeNotes
Body array
FieldTypeDescription
id_worksubtyperead-onlyintegerPrimary key of the work subtype (this table is keyed id_worksubtype, not id).
id_worktypeintegerThe work type this subtype belongs to.
namestring(100)Name of the work subtype.
purposestring(255)What the work subtype is used for.
num_partsintegerNumber of parts the work applies to (multi-part forms).
vendedintegerNon-zero when the work is vended - purchased outside rather than produced in-house.
createdatestringWhen the change happened, not when we sent it. A retry two hours later still carries the original time.
id_user_createread-onlyintegerUser who created the record.
lastrevisedateread-onlystringWhen the record was last revised.
id_user_reviseread-onlyintegerUser who last revised the record.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
externalidstring(100)Your own key. Scoped to your company.
curl -X POST \
  'https://acme.nolapro.com/!/api/v2/worksubtypes/batch' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '[
    {
        "id_worktype": 1,
        "name": "Example name",
        "purpose": "Example purpose",
        "num_parts": 1,
        "vended": 1
    }
]'
GET/worksubtypes 200403

List work subtypes.

Requires scope setup:read.

Parameters
NameInTypeNotes
namequerystringPartial match, case insensitive.
cancelquerystringDefaults to false. Pass true or any.
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/worksubtypes' \
  -H 'Authorization: Bearer $NP_TOKEN'
POST/worksubtypes 201400

Create.

Requires scope setup:write.

Parameters
NameInTypeNotes
Body
FieldTypeDescription
id_worksubtyperead-onlyintegerPrimary key of the work subtype (this table is keyed id_worksubtype, not id).
id_worktypeintegerThe work type this subtype belongs to.
namestring(100)Name of the work subtype.
purposestring(255)What the work subtype is used for.
num_partsintegerNumber of parts the work applies to (multi-part forms).
vendedintegerNon-zero when the work is vended - purchased outside rather than produced in-house.
createdatestringWhen the change happened, not when we sent it. A retry two hours later still carries the original time.
id_user_createread-onlyintegerUser who created the record.
lastrevisedateread-onlystringWhen the record was last revised.
id_user_reviseread-onlyintegerUser who last revised the record.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
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/worksubtypes' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '{
    "id_worktype": 1,
    "name": "Example name",
    "purpose": "Example purpose",
    "num_parts": 1,
    "vended": 1
}'
Response 201
{
    "id_worktype": 1,
    "name": "Example name",
    "purpose": "Example purpose",
    "num_parts": 1,
    "vended": 1
}
GET/worksubtypes/{id} 200404

Retrieve one record.

Requires scope setup: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/worksubtypes/104' \
  -H 'Authorization: Bearer $NP_TOKEN'
Response 200
{
    "id_worktype": 1,
    "name": "Example name",
    "purpose": "Example purpose",
    "num_parts": 1,
    "vended": 1
}
PATCH/worksubtypes/{id} 200404

Update.

Requires scope setup:write.

Parameters
NameInTypeNotes
idrequiredpathintegerThe record id.
Body
FieldTypeDescription
id_worksubtyperead-onlyintegerPrimary key of the work subtype (this table is keyed id_worksubtype, not id).
id_worktypeintegerThe work type this subtype belongs to.
namestring(100)Name of the work subtype.
purposestring(255)What the work subtype is used for.
num_partsintegerNumber of parts the work applies to (multi-part forms).
vendedintegerNon-zero when the work is vended - purchased outside rather than produced in-house.
createdatestringWhen the change happened, not when we sent it. A retry two hours later still carries the original time.
id_user_createread-onlyintegerUser who created the record.
lastrevisedateread-onlystringWhen the record was last revised.
id_user_reviseread-onlyintegerUser who last revised the record.
cancelbooleanCancelled. Always a boolean on the wire, whatever integer width the column uses (D23).
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/worksubtypes/104' \
  -H 'Authorization: Bearer $NP_TOKEN' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: your-unique-key' \
  -d '{
    "id_worktype": 1,
    "name": "Example name",
    "purpose": "Example purpose",
    "num_parts": 1,
    "vended": 1
}'
Response 200
{
    "id_worktype": 1,
    "name": "Example name",
    "purpose": "Example purpose",
    "num_parts": 1,
    "vended": 1
}
DELETE/worksubtypes/{id} 200404

Cancel.

Requires scope setup: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/worksubtypes/104' \
  -H 'Authorization: Bearer $NP_TOKEN'
Response 200
{
    "id_worktype": 1,
    "name": "Example name",
    "purpose": "Example purpose",
    "num_parts": 1,
    "vended": 1
}