---
title: "List materials for the current organization scoped to a project"
method: GET
path: "/materials"
tags: ["Materials"]
---

# List materials for the current organization scoped to a project

`GET /materials`

Retrieve materials for the current organization scoped to a project.

Filter parameters support Supabase filter operators:
- Text fields (name, manufacturer, product_id): use ``ilike.%value%`` for a
  partial match, or a bare value for exact equality
- Date fields: use ``gte.value``, ``lte.value``, etc.
- Date range: use created_at_gt and created_at_lt for between queries

``q`` is the search box's free-text param, applied in the repository
independently of the ``name`` filter above.

## Query parameters

- `project_id` string, required — Project to scope materials to
- `limit` integer
- `offset` integer
- `q` string, nullable — Free-text search on material name (case-insensitive substring).
- `name` string, nullable
- `manufacturer` string, nullable
- `product_id` string, nullable
- `created_at` string, nullable
- `created_at_gt` string, nullable
- `created_at_lt` string, nullable
- `updated_at` string, nullable
- `updated_at_gt` string, nullable
- `updated_at_lt` string, nullable
- `order_by` 'name' | 'manufacturer' | 'created_at' | 'updated_at'
- `order` 'asc' | 'desc'

## Response `200`

Successful Response

- PaginatedResponseMaterial
  - `items` Material[], required
    - `name` string, required — Name of the material
    - `definition` object, nullable — Material definition (formula, type, constituents)
    - `manufacturer` string, nullable — Manufacturer of the material
    - `product_id` string, nullable — Supplier product ID
    - `id` string, required — Unique identifier for the material
    - `organization_id` string, required — Organization ID of the material
    - `project_id` string, required — Project the material is scoped to, derived from the cell specification(s) that reference it.
    - `created_at` string, date-time, required — Timestamp when the material was created
    - `updated_at` string, date-time, required — Timestamp when the material was last updated
    - `created_by` string, nullable — User ID of the creator.
    - `property_count` integer — Number of property datasets attached to this material
  - `count` integer, required
  - `total` integer, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/ionworks/apis/fastapi.md) · [All operations](https://skmtc.dev/ionworks/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ionworks/fastapi/revisions/7337a3cbdaf2/schema)
