Index | Conventions

api/v1/assets

Path: api/v1/assets

This API is JSON:API compliant.

This endpoint supports the following methods:
GET POST PATCH

This endpoint requires an OAuth bearer token, and returns errors in a standard shape. See API Conventions for authentication, error responses and paging, which apply to every endpoint.

The resource type for this endpoint is Asset
The identifier is assetno

Relationships

A relationship links this Asset to another resource. By default only the related resource's type and id are returned. Relationships marked Includable can be embedded in the response via the include query parameter (see Includes below). To set or change a relationship, send a resource identifier (type and id) for it. Postable means the relationship can be set when creating the resource (POST); Patchable means it can be changed when updating an existing resource (PATCH). Some relationships are Postable but not Patchable — they can be set at creation but not changed afterwards. A value sent for a relationship that is not Postable/Patchable in that context is not applied.

NotePostable and Patchable describe what the API surface accepts. Whether a particular change is permitted also depends on the resource's current state and your permissions, which Jim2 enforces — a change that is not allowed is rejected with an error response (see the Conventions page).
RelationshipTypeReturnsIncludablePostablePatchable
accountManagerCardFileobject
itemItemarray
nameCardFileobject
ownerCardFileobject
requestCardFileobject
shipCardFileobject

Includes

Use the include query parameter to embed Includable relationships in a single response, for example:
GET /api/v1/assets/{assetno}?include=owner,ship,accountManager,name,item,request

Embedded resources are returned in a top-level included array, not nested inside the relationship. Match each one back to its relationship by type and id.

NoteEach relationship you include embeds its full related resources in the response, so requesting includes — especially several at once, or to-many relationships that return every related row with no paging — can greatly increase the size of the payload. Only request the includes you actually need.

For example, requesting include=owner returns the owner reference under relationships and the full resource in the included array. The reference and the included entry share the same type and id:

		
GET /api/v1/assets/{assetno}?include=owner

{
  "data": {
    "type": "Asset",
    "id": "1001",
    "relationships": {
      "owner": {
        "data": { "type": "CardFile", "id": "2002" }
      }
    }
  },
  "included": [
    {
      "type": "CardFile",
      "id": "2002",
      "attributes": { ... }
    }
  ]
}
	

Attributes

The Asset resource type attributes are as follows:

AttributeTypeRead-onlyDescription
assetCodestringThe asset code.
attnstringThe request contact (attention) name.
BranchCodestringThe branch code. On update, must match a configured branch.
Branches are optional in Jim2 - this is only set when your site is configured to use branches.
commentstringA general comment on the asset.
companyCodestringThe company code.
costCentrestringThe cost centre.
costValuenumberThe cost value.
custRefstringThe customer's reference for the asset.
dateInstringThe date the asset came in, as an ISO date.
dateOutstringThe date the asset went out, as an ISO date.
eKMRequestThresholdOverrideNointegerThe EKM request threshold override number.
eKMStatusCodestringThe EKM status code.
GLDeptCodestringThe GL department code. On update, must match a configured GL department.
GL departments are optional in Jim2 - this is only set when your site is configured to use GL departments.
groupsarray of objectThe groups the asset belongs to.
See the groups section below.
itemDescstringThe item description.
prioritystringThe asset's priority.
reqDaysNullable`1The default number of days until due (required days).
reqHoursNullable`1The default number of hours until due (required hours).
requestByNamestringThe name of the page request the asset was requested by.
serialNostringThe asset's serial number.
shipCommentstringA shipping comment for the asset.
shipInfostringShipping information for the asset.
statusstringThe asset's status.
SubBranchCodestringThe sub-branch code. On update, must match a configured sub-branch.
Sub-branches are optional in Jim2 - this is only set when your site is configured to use sub-branches.
useShipAddrbooleanWhether to use the ship address for the asset.
warDateInstringThe warranty start date, as an ISO date.
warDateOutstringThe warranty end date, as an ISO date.

groups

Attributes of each element in the groups array.

AttributeTypeRead-onlyDescription
idintegerThe group's unique identifier.
namestringThe group's name.
typestringThe group's type.

Example GET (Return all)

Path: api/v1/assets?filter[isActive]=True&filter[owner.id]=6&filter[custRef][-like]CR-MCH

Response:

This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.

This is a list. To keep the example readable, only the first item below is written out; the later items have been trimmed down in this documentation. In a real response each item comes back with the data applicable to that record (as described above).

Side-loading related resources with the include query parameter is not supported on list endpoints: an include parameter is ignored here and no included section is returned. To retrieve a related resource, request it directly using the id shown in each item's relationships, or use the single-resource (get by id) endpoint, which does support include.

{
  "data": [
    {
      "id": "10",
      "type": "Asset",
      "attributes": {
        "assetCode": "MCH.C3",
        "priority": "Normal",
        "status": "Booked",
        "custRef": "CR-MCH-C3",
        "reqDays": 7,
        "reqHours": 2,
        "serialNo": "7-1234ABC-MCHC3",
        "dateIn": "2025-10-03",
        "dateOut": "2026-10-02",
        "warDateIn": "2025-10-03",
        "warDateOut": "2027-10-02",
        "shipInfo": "Acme Corporation Pty Ltd\r\n12 Industrial Ave\r\nCHATSWOOD NSW 2067",
        "useShipAddr": true,
        "shipComment": "Deliver to loading dock B before 3pm.",
        "itemDesc": "MultiFunction Centre Type 2",
        "attn": "Jane Smith",
        "requestByName": "Acme Service Desk",
        "comment": "Unit under full service contract.",
        "companyCode": "HAPPEN",
        "BranchCode": "SYD",
        "SubBranchCode": "SYD-NORTH",
        "GLDeptCode": "SERVICE",
        "eKMRequestThresholdOverrideNo": 250,
        "eKMStatusCode": "ACTIVE",
        "costCentre": "CC-100",
        "costValue": 4250.00,
        "groups": [
          {
            "type": "Region",
            "id": 1,
            "name": "East Coast"
          }
        ]
      },
      "relationships": {
        "owner": { "data": { "type": "CardFile", "id": "6" } },
        "ship": { "data": { "type": "CardFile", "id": "6" } },
        "item": { "data": { "type": "Item", "id": "6" } },
        "accountManager": { "data": { "type": "CardFile", "id": "16" } },
        "name": { "data": { "type": "CardFile", "id": "16" } },
        "request": { "data": { "type": "CardFile", "id": "7" } }
      },
      "links": {
        "self": "/jim_webapi/api/v1/assets/10"
      }
    },
    {
      "id": "11",
      "type": "Asset",
      "attributes": {
        "assetCode": "PMP.A1",
        "status": "In Service"
      }
    }
  ]
}

Example GET (Return specific)

Path: api/v1/assets/10?include=owner,ship,accountManager,name,item,request

Response:

This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.

{
  "data": {
    "id": "10",
    "type": "Asset",
    "attributes": {
      "assetCode": "MCH.C3",
      "priority": "Normal",
      "status": "Booked",
      "custRef": "CR-MCH-C3",
      "reqDays": 7,
      "reqHours": 2,
      "serialNo": "7-1234ABC-MCHC3",
      "dateIn": "2025-10-03",
      "dateOut": "2026-10-02",
      "warDateIn": "2025-10-03",
      "warDateOut": "2027-10-02",
      "shipInfo": "Acme Corporation Pty Ltd\r\n12 Industrial Ave\r\nCHATSWOOD NSW 2067",
      "useShipAddr": true,
      "shipComment": "Deliver to loading dock B before 3pm.",
      "itemDesc": "MultiFunction Centre Type 2",
      "attn": "Jane Smith",
      "requestByName": "Acme Service Desk",
      "comment": "Unit under full service contract.",
      "companyCode": "HAPPEN",
      "BranchCode": "SYD",
      "SubBranchCode": "SYD-NORTH",
      "GLDeptCode": "SERVICE",
      "eKMRequestThresholdOverrideNo": 250,
      "eKMStatusCode": "ACTIVE",
      "costCentre": "CC-100",
      "costValue": 4250.00,
      "groups": [
        {
          "type": "Region",
          "id": 1,
          "name": "East Coast"
        }
      ]
    },
    "relationships": {
      "owner": { "data": { "type": "CardFile", "id": "6" } },
      "ship": { "data": { "type": "CardFile", "id": "6" } },
      "item": { "data": { "type": "Item", "id": "6" } },
      "accountManager": { "data": { "type": "CardFile", "id": "16" } },
      "name": { "data": { "type": "CardFile", "id": "16" } },
      "request": { "data": { "type": "CardFile", "id": "7" } }
    },
    "links": {
      "self": "/jim_webapi/api/v1/assets/10"
    }
  },
  "included": [
    {
      "type": "CardFile",
      "id": "6",
      "attributes": {
        "cardNo": 6,
        "cardCode": "ACME",
        "contact": "Jane Smith",
        "name": "Acme Corporation Pty Ltd",
        "aBN": "51 824 753 556",
        "aCN": "824 753 556",
        "shipVia": "Courier Express",
        "shipAmount": 15.00,
        "branchCode": "SYD",
        "subBranchCode": "SYD-NORTH",
        "gLDeptCode": "SERVICE",
        "customer": {
          "terms": "30 Days",
          "priceLevel": "Retail",
          "custPONo": "PO-ACME-4471",
          "currencyCode": "AUD",
          "creditHold": "OFF( Auto )",
          "creditLimit": 50000.00,
          "accFeePerc": 1.50,
          "bPayRefNo": "1234567890",
          "backorder": "Allow Backorders",
          "requiredDays": 30,
          "requiredHours": 4,
          "taxPaid": true,
          "taxExclCode": "GST",
          "taxInclCode": "GSTINC",
          "batchInvGroupBy": "Customer",
          "sendStatementVia": "Email",
          "sendInvVia": "Email",
          "groups": [
            { "type": "Region", "id": 1, "name": "East Coast" }
          ]
        },
        "address": {
          "isAddressResidential": false,
          "streetAddress": "12 Industrial Ave",
          "suburb": "Chatswood",
          "state": "NSW",
          "postCode": "2067",
          "country": "Australia"
        },
        "delAddress": {
          "isAddressResidential": false,
          "streetAddress": "12 Industrial Ave",
          "suburb": "Chatswood",
          "state": "NSW",
          "postCode": "2067",
          "country": "Australia"
        }
      },
      "relationships": {
        "contacts": {
          "data": [
            { "type": "CardFileContact", "id": "6-1" }
          ]
        },
        "accountManager": {
          "data": { "type": "CardFile", "id": "7" }
        }
      }
    },
    {
      "type": "CardFile",
      "id": "16",
      "attributes": {
        "cardNo": 16,
        "cardCode": "STAFF.AM",
        "contact": "Alex Manager",
        "name": "Alex Manager",
        "aBN": "",
        "aCN": "",
        "shipVia": "",
        "shipAmount": 0.00,
        "branchCode": "SYD",
        "subBranchCode": "SYD-NORTH",
        "gLDeptCode": "SALES",
        "customer": {
          "terms": "30 Days",
          "priceLevel": "Retail",
          "custPONo": "PO-AM-001",
          "currencyCode": "AUD",
          "creditHold": "OFF( Auto )",
          "creditLimit": 10000.00,
          "accFeePerc": 0.00,
          "bPayRefNo": "9900112233",
          "backorder": "Allow Backorders",
          "requiredDays": 7,
          "requiredHours": 0,
          "taxPaid": false,
          "taxExclCode": "GST",
          "taxInclCode": "GSTINC",
          "batchInvGroupBy": "Customer",
          "sendStatementVia": "Email",
          "sendInvVia": "Email",
          "groups": [
            { "type": "Region", "id": 1, "name": "East Coast" }
          ]
        },
        "address": {
          "isAddressResidential": false,
          "streetAddress": "Level 2, 88 Market Street",
          "suburb": "Sydney",
          "state": "NSW",
          "postCode": "2000",
          "country": "Australia"
        },
        "delAddress": {
          "isAddressResidential": false,
          "streetAddress": "Level 2, 88 Market Street",
          "suburb": "Sydney",
          "state": "NSW",
          "postCode": "2000",
          "country": "Australia"
        }
      },
      "relationships": {
        "contacts": {
          "data": [
            { "type": "CardFileContact", "id": "16-1" }
          ]
        },
        "accountManager": {
          "data": { "type": "CardFile", "id": "7" }
        }
      }
    },
    {
      "type": "CardFile",
      "id": "7",
      "attributes": {
        "cardNo": 7,
        "cardCode": "ACME.SVC",
        "contact": "Service Desk",
        "name": "Acme Corporation Pty Ltd",
        "aBN": "",
        "aCN": "",
        "shipVia": "",
        "shipAmount": 0.00,
        "branchCode": "SYD",
        "subBranchCode": "SYD-NORTH",
        "gLDeptCode": "SERVICE",
        "customer": {
          "terms": "30 Days",
          "priceLevel": "Retail",
          "custPONo": "PO-ACME-SVC-01",
          "currencyCode": "AUD",
          "creditHold": "OFF( Auto )",
          "creditLimit": 25000.00,
          "accFeePerc": 0.00,
          "bPayRefNo": "5566778899",
          "backorder": "Allow Backorders",
          "requiredDays": 14,
          "requiredHours": 0,
          "taxPaid": true,
          "taxExclCode": "GST",
          "taxInclCode": "GSTINC",
          "batchInvGroupBy": "Customer",
          "sendStatementVia": "Email",
          "sendInvVia": "Email",
          "groups": [
            { "type": "Region", "id": 1, "name": "East Coast" }
          ]
        },
        "address": {
          "isAddressResidential": false,
          "streetAddress": "12 Industrial Ave",
          "suburb": "Chatswood",
          "state": "NSW",
          "postCode": "2067",
          "country": "Australia"
        },
        "delAddress": {
          "isAddressResidential": false,
          "streetAddress": "12 Industrial Ave",
          "suburb": "Chatswood",
          "state": "NSW",
          "postCode": "2067",
          "country": "Australia"
        }
      },
      "relationships": {
        "contacts": {
          "data": [
            { "type": "CardFileContact", "id": "7-1" }
          ]
        },
        "accountManager": {
          "data": { "type": "CardFile", "id": "16" }
        }
      }
    },
    {
      "type": "Item",
      "id": "6",
      "attributes": {
        "ItemCode": "MFC.TYPE2",
        "Description": "MultiFunction Centre Type 2"
      }
    }
  ]
}

Example POST

Path: api/v1/assets

Request:

{
  "data": {
    "type": "Asset",
    "attributes": {
      "assetCode": "AST-0001",
      "priority": "Normal",
      "status": "Booked",
      "custRef": "AssetCustRef",
      "reqDays": 10,
      "reqHours": 2,
      "serialNo": "123456ABCD",
      "dateIn": "2024-06-24",
      "dateOut": "2024-07-24",
      "warDateIn": "2024-06-24",
      "warDateOut": "2025-06-24",
      "shipInfo": "Ship to loading dock B",
      "useShipAddr": true,
      "shipComment": "Deliver during business hours",
      "itemDesc": "Multifunction printer",
      "attn": "John Smith",
      "comment": "Installed on level 3",
      "BranchCode": "SYD",
      "SubBranchCode": "SYD-NORTH",
      "GLDeptCode": "SERVICE",
      "eKMRequestThresholdOverrideNo": 500,
      "eKMStatusCode": "OK",
      "costCentre": "CC-100",
      "costValue": 1250.00
    },
    "relationships": {
      "owner": {
        "data": {
          "type": "CardFile",
          "id": "1"
        }
      },
      "ship": {
        "data": {
          "type": "CardFile",
          "id": "2"
        }
      },
      "item": {
        "data": {
          "type": "Item",
          "id": "1"
        }
      },
      "accountManager": {
        "data": {
          "type": "CardFile",
          "id": "16"
        }
      },
      "name": {
        "data": {
          "type": "CardFile",
          "id": "16"
        }
      },
      "request": {
        "data": {
          "type": "CardFile",
          "id": "1"
        }
      }
    }
  }
}

Response:

This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.

{
  "data": {
    "id": "53",
    "type": "Asset",
    "attributes": {
      "assetCode": "53",
      "priority": "Normal",
      "status": "Booked",
      "custRef": "AssetCustRef",
      "reqDays": 10,
      "reqHours": 2,
      "serialNo": "123456ABCD",
      "dateIn": "2026-03-15",
      "dateOut": "2027-03-14",
      "warDateIn": "2026-03-15",
      "warDateOut": "2028-03-14",
      "shipInfo": "Acme Corporation Pty Ltd\r\n12 Industrial Ave\r\nCHATSWOOD NSW 2067",
      "useShipAddr": true,
      "shipComment": "Deliver to loading dock B before 3pm.",
      "itemDesc": "Sale",
      "attn": "Jane Smith",
      "requestByName": "Acme Service Desk",
      "comment": "New asset created via API.",
      "companyCode": "HAPPEN",
      "BranchCode": "SYD",
      "SubBranchCode": "SYD-NORTH",
      "GLDeptCode": "SERVICE",
      "eKMRequestThresholdOverrideNo": 250,
      "eKMStatusCode": "ACTIVE",
      "costCentre": "CC-100",
      "costValue": 4250.00,
      "groups": [
        {
          "type": "Region",
          "id": 1,
          "name": "East Coast"
        }
      ]
    },
    "relationships": {
      "owner": {
        "data": {
          "type": "CardFile",
          "id": "1"
        }
      },
      "ship": {
        "data": {
          "type": "CardFile",
          "id": "2"
        }
      },
      "item": {
        "data": {
          "type": "Item",
          "id": "1"
        }
      },
      "name": {
        "data": {
          "type": "CardFile",
          "id": "16"
        }
      },
      "accountManager": {
        "data": {
          "type": "CardFile",
          "id": "16"
        }
      },
      "request": {
        "data": {
          "type": "CardFile",
          "id": "7"
        }
      }
    },
    "links": { "self": "/jim_initialtest/api/v1/asset/1/53" }
  }
}

Example PATCH

Path: api/v1/assets/10

Request:

{
  "data": {
    "id": "1",
    "type": "Asset",
    "attributes": {
      "assetCode": "AST-0001",
      "priority": "Normal",
      "status": "Booked",
      "custRef": "AssetCustRef",
      "reqDays": 10,
      "reqHours": 2,
      "serialNo": "123456ABCD",
      "dateIn": "2024-06-24",
      "dateOut": "2024-07-24",
      "warDateIn": "2024-06-24",
      "warDateOut": "2025-06-24",
      "shipInfo": "Ship to loading dock B",
      "useShipAddr": true,
      "shipComment": "Deliver during business hours",
      "itemDesc": "Multifunction printer",
      "attn": "John Smith",
      "comment": "Installed on level 3",
      "BranchCode": "SYD",
      "SubBranchCode": "SYD-NORTH",
      "GLDeptCode": "SERVICE",
      "eKMRequestThresholdOverrideNo": 500,
      "eKMStatusCode": "OK",
      "costCentre": "CC-100",
      "costValue": 1250.00
    },
    "relationships": {
      "owner": {
        "data": {
          "type": "CardFile",
          "id": "1"
        }
      },
      "ship": {
        "data": {
          "type": "CardFile",
          "id": "2"
        }
      },
      "item": {
        "data": {
          "type": "Item",
          "id": "1"
        }
      },
      "accountManager": {
        "data": {
          "type": "CardFile",
          "id": "16"
        }
      },
      "name": {
        "data": {
          "type": "CardFile",
          "id": "16"
        }
      },
      "request": {
        "data": {
          "type": "CardFile",
          "id": "1"
        }
      }
    }
  }
}

Response:

This example shows the maximum set of fields the endpoint can return, all populated. A real response only contains the data that applies to that record, so fields that are empty or not relevant are omitted — do not assume every field shown here will be present in every response.

{
  "data": {
    "id": "1",
      "type": "Asset",
      "attributes": {
        "assetCode": "BCMB.1",
        "priority": "Normal",
        "status": "Booked",
        "custRef": "CONTRACT.SUB",
        "reqDays": 14,
        "reqHours": 4,
        "serialNo": "1234ABC-BCMB1",
        "dateIn": "2025-10-03",
        "dateOut": "2026-10-02",
        "warDateIn": "2025-10-03",
        "warDateOut": "2027-10-02",
        "shipInfo": "Simple cust #1\r\nSimple Cust Address\r\nAARONS PASS NSW 2850",
        "useShipAddr": false,
        "shipComment": "Call ahead before delivery.",
        "itemDesc": "MultiFunction Centre Type 2",
        "attn": "Jane Smith",
        "requestByName": "Email (Text)",
        "comment": "Serviced under managed print agreement.",
        "companyCode": "HAPPEN",
        "BranchCode": "SYD",
        "SubBranchCode": "SYD-NORTH",
        "GLDeptCode": "SERVICE",
        "eKMRequestThresholdOverrideNo": 250,
        "eKMStatusCode": "ACTIVE",
        "costCentre": "CC-100",
        "costValue": 4250.00,
        "groups": [
          {
            "type": "Region",
            "id": 1,
            "name": "East Coast"
          }
        ]
      },
      "relationships": {
        "owner": {
          "data": {
            "type": "CardFile",
            "id": "6"
          }
        },
        "ship": {
          "data": {
            "type": "CardFile",
            "id": "6"
          }
        },
        "item": {
          "data": {
            "type": "Item",
            "id": "6"
          }
        },
        "name": {
          "data": {
            "type": "CardFile",
            "id": "16"
          }
        },
        "accountManager": {
          "data": {
            "type": "CardFile",
            "id": "16"
          }
        },
        "request": {
          "data": {
            "type": "CardFile",
            "id": "20"
          }
        }
      },
      "links": { "self": "/jim_initialtest/api/v1/asset/1" }
    }
  }