Records in a connected system point at each other: a work order at its asset, a purchase order line at its order. Makini returns every such relation as a small link object, and one expand parameter swaps it for the full related record, so you get both in a single request.
Request
Response
The expanded asset is the full record, while location, and the asset's own location, stay links.
expand takes a comma-separated list of relation names, such as ?expand=asset,location. Each named relation is returned as the full related record instead of a link. The relations each endpoint can expand are listed on its expand parameter, and an unknown name is a 400.
Expansion is one level deep
In an expanded record, its own relations stay links. In the API Reference that expanded shape is the related entity's …Core schema, filed under its group's Expanded folder.
If the related record isn't available (it was deleted, or hasn't synced yet), an expanded relation stays a link. Its href then answers 404.
Some relations hold several records, such as a work order's assignees. They are arrays of links, [] when empty and never null, and a member is never null. With expand, each member becomes the full related record.
Some relations can point at more than one entity. A comment's target can be a work order, an asset, an invoice and more. The link's rel tells you which entity it points at.When expanded, the related record carries an extra _entity field naming its entity. Its schema is <Entity>CoreTagged, the …Core schema plus _entity.