---
title: "List Asset Resources"
method: GET
path: "/asset-resources"
tags: ["Asset resources"]
---

# List Asset Resources

`GET /asset-resources`

## Request

- Base URL: `https://api.purplegrain.com/api/v1`
- URL: `https://api.purplegrain.com/api/v1/asset-resources`
- Auth: one of:
  - none
  - HTTP bearer

Everything filed on one paddock or one mob. `resources` lists them
without a follow-up call: the property (`type: farm`), the paddock a
mob is standing in (`type: paddock`), the live mobs standing in a
paddock (`type: mob`), and the tasks and records (`type: task`).

A move is a task whose asset is the mob. On a paddock it is still
listed, because the move names that paddock as where the mob left or
arrived. Placement uses the newest completed record that names a
destination, the same rule as `current_paddock_id`.

`asset_type` is `paddock` or `mob` (singular or plural). Omit it and
`asset_id` is tried as a paddock, then as a mob. Tasks are one page
(`page`, `per_page`, default 25) in board order; `meta` carries the
page. The property, the current paddock and the mobs are always
complete, not paged. Pass `include` for the full records.

The caller must be able to read the asset: an accepted member of the
owning business, or the person who owns a personal property.

## Query parameters

- `asset_id` string, required
- `asset_type` string
- `page` integer
- `per_page` integer
- `include` string

## Response `200`

The asset and the resources filed on it.

- AssetResourcesShowResponseAttributes
  - `data` AssetResourcesModelAttributes: Single asset-resource list in attributes-adapter shape (Accept application/json).
    - `id` string
    - `type` string
    - `asset_type` string
    - `asset_id` string
    - `name` string
    - `farm_id` string, nullable
    - `resources` AssetResourceRef[]
      - `type` 'farm' | 'paddock' | 'mob' | 'task', required: `farm`, `paddock`, `mob` or `task`.
      - `id` string, required
      - `name` string, nullable: Present on a farm, paddock or mob.
      - `head_count` integer, nullable: Present on a mob.
      - `status` string, nullable: Present on a task. `pending`, `completed` or `cancelled`.
      - `operation_type` string, nullable: Present on a task when one was recorded.
      - `description` string, nullable: The task text.
      - `record_summary` string, nullable: The composed diary line, when the task is a record.
    - `farm` object, nullable: Present when `include=farm`.
    - `paddock` object, nullable: Present when `include=paddock`.
    - `mobs` object[]: Present when `include=mobs`.
    - `tasks` object[]: Present when `include=tasks`.
  - `meta` PaginationMeta
    - `current_page` number
    - `next_page` number, nullable
    - `prev_page` number, nullable

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found — `asset_id` is missing or names nothing the type can resolve.

---

[API](https://skmtc.dev/purplegrain/apis/purple-grain-api.md) · [All operations](https://skmtc.dev/purplegrain/apis/purple-grain-api/llms.txt) · [OpenAPI document](https://skmtc.dev/purplegrain/apis/purple-grain-api/revisions/4bedbc1c784c?raw)
