---
type: "firecrawl-provider"
description: "CC0 HDRIs, PBR textures and 3D models from Poly Haven's public API: search the library, read one asset with authors, licence, polycount and every download URL by map, resolution and format, and list categories."
use_when: "CC0 HDRIs, PBR textures and 3D models from Poly Haven's public API: search the library, read one asset with authors, licence, polycount and every download URL by map, resolution and format, and list categories."
categories: "Entertainment"
capabilities: 3
credits_per_call: 5
---
# Poly Haven on Firecrawl Alexandria

CC0 HDRIs, PBR textures and 3D models from Poly Haven's public API: search the library, read one asset with authors, licence, polycount and every download URL by map, resolution and format, and list categories.

- Categories: Entertainment
- Category index: [Entertainment category](https://firecrawl.dev/alexandria/agents/categories/entertainment)
- Provider key: `polyhaven-com`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/polyhaven-com)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/openapi.json)

## Capabilities

- [Get asset](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/graphics-assets/get_asset): One Poly Haven asset by id or page URL: name, type, authors and roles, the CC0 licence block with a credit line, taxonomy category, tags, attributes, polycount, texel density and LODs for models, capture date, location and white balance for HDRIs, real-world size, thumbnail and page URL, plus every downloadable file flattened to component, resolution, format, public URL, size and md5 (bundles list the files they reference). Filter files by resolution and format. Returns URLs only; never downloads binaries.
- [List categories](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/graphics-assets/list_categories): Poly Haven's category tree for one asset type (hdris, textures or models): taxonomy nodes with slug path, name, description, depth, parent and subcategory count, two levels deep by default or below a given parent, plus the older flat categories with asset counts.
- [Search assets](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/graphics-assets/search_assets): Search Poly Haven's CC0 library of HDRIs, textures and models. Filters by type, category (a taxonomy path such as wood/engineered-wood, or an older flat category such as denim), words in the name, tags, categories and description, and author; sorts by relevance, downloads, newest or name; pages with continuation. Each asset carries authors, the CC0 licence block, polycount, size, thumbnail and its page URL. Accepts a polyhaven.com library URL.

## 1. Choose this provider when

CC0 HDRIs, PBR textures and 3D models from Poly Haven's public API: search the library, read one asset with authors, licence, polycount and every download URL by map, resolution and format, and list categories.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "polyhaven-com",
  "capability": "graphics-assets/get_asset",
  "options": {
    "id": "brick_wall_001",
    "resolution": "1k"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `format` (string): Keep files of this format only, e.g. jpg, png, exr, hdr, gltf, blend, fbx, usd. Example: `<format>`
- `id` (string): Asset slug, e.g. brick_wall_001. Pattern: ^[A-Za-z0-9_.-]+$. Example: `<id>`
- `resolution` (string): Keep files of this resolution only, e.g. 1k, 4k, 16k. Example: `<resolution>`
- `url` (string): Asset page (https://polyhaven.com/a/<id>) or /info or /files API URL; used when id is absent. Example: `<url>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "polyhaven-com",
    capability: "graphics-assets/get_asset",
    options: {
      id: "brick_wall_001",
      resolution: "1k",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "polyhaven-com",
  "capability": "graphics-assets/get_asset",
  "options": {
    "id": "brick_wall_001",
    "resolution": "1k"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "polyhaven-com",
    "capability": "graphics-assets/get_asset",
    "options": {
      "id": "brick_wall_001",
      "resolution": "1k"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'polyhaven-com/graphics-assets/get_asset' \
  --options '{"id":"brick_wall_001","resolution":"1k"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "polyhaven-com",
  "capability": "graphics-assets/get_asset",
  "options": {
    "id": "brick_wall_001",
    "resolution": "1k"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "polyhaven-com",
  "capability": "graphics-assets/get_asset",
  "options": {
    "id": "brick_wall_001",
    "resolution": "1k"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "attributes": {
    "condition": [
      "weathered",
      "worn",
      "damaged"
    ],
    "origin": "man_made",
    "setting": "either",
    "surface_use": "wall"
  },
  "author_notes": null,
  "authors": [
    {
      "name": "Dimitrios Savva",
      "role": "Photography"
    },
    {
      "name": "Rob Tuytel",
      "role": "Processing"
    }
  ],
  "categories": [
    "brick",
    "man made",
    "outdoor",
    "indoor",
    "clean",
    "wall"
  ],
  "category": "Brick & Block/Clay Brick/Running-Bond",
  "collections": [],
  "coordinates": null,
  "date_taken": null,
  "description": "Free 8K texture of a red, rough industrial brick wall with baked-in grime, chipped edges, varied mortar tones and pronounced surface relief.",
  "dimensions_mm": [
    3000,
    3000
  ],
  "download_count": 115589,
  "evs_cap": null,
  "file_count": 24,
  "file_filter": {
    "format": null,
    "resolution": "1k"
  },
  "files": [
    {
      "component": "AO",
      "format": "exr",
      "includes": [],
      "md5": "46cb8e3955edf1cfe245581bccb5a011",
      "resolution": "1k",
      "size_bytes": 655746,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_ao_1k.exr"
    },
    {
      "component": "AO",
      "format": "jpg",
      "includes": [],
      "md5": "aa63a3345a5217f34aae37a05344ce00",
      "resolution": "1k",
      "size_bytes": 269071,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_ao_1k.jpg"
    },
    {
      "component": "AO",
      "format": "png",
      "includes": [],
      "md5": "a7194fda48f7fc52a5f3c915b6ec40bb",
      "resolution": "1k",
      "size_bytes": 470899,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_ao_1k.png"
    },
    {
      "component": "arm",
      "format": "exr",
      "includes": [],
      "md5": "5d564e88e51a599e0323c5d60295a20e",
      "resolution": "1k",
      "size_bytes": 923369,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_arm_1k.exr"
    },
    {
      "component": "arm",
      "format": "jpg",
      "includes": [],
      "md5": "bb40df6639b15f56ecb484b350cbc45d",
      "resolution": "1k",
      "size_bytes": 123384,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_arm_1k.jpg"
    },
    {
      "component": "arm",
      "format": "png",
      "includes": [],
      "md5": "b2ed4ccc04ed25cfd682e4fe13200747",
      "resolution": "1k",
      "size_bytes": 1084907,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_arm_1k.png"
    },
    {
      "component": "blend",
      "format": "blend",
      "includes": [
        {
          "md5": "955d2d4500eb549be0f2873305782798",
          "path": "textures/brick_wall_001_diffuse_1k.jpg",
          "size_bytes": 574381,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
        },
        {
          "md5": "2b5d461ef87420993fe52ff13753dcb1",
          "path": "textures/brick_wall_001_displacement_1k.png",
          "size_bytes": 1874946,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_displacement_1k.png"
        },
        {
          "md5": "2e1ea0448ff3209d35ac21b8f5917aec",
          "path": "textures/brick_wall_001_nor_gl_1k.exr",
          "size_bytes": 2241164,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_gl_1k.exr"
        },
        {
          "md5": "618ceca60a4321aecc6d61eebe53d551",
          "path": "textures/brick_wall_001_rough_1k.jpg",
          "size_bytes": 211093,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
        }
      ],
      "md5": "cd0ad1b47170729dc6a44f50a8eb4f3d",
      "resolution": "1k",
      "size_bytes": 277899,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/blend/1k/brick_wall_001/brick_wall_001_1k.blend"
    },
    {
      "component": "Diffuse",
      "format": "exr",
      "includes": [],
      "md5": "df51e840e6ed826ca4d2478fe23c0718",
      "resolution": "1k",
      "size_bytes": 1658122,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_diffuse_1k.exr"
    },
    {
      "component": "Diffuse",
      "format": "jpg",
      "includes": [],
      "md5": "955d2d4500eb549be0f2873305782798",
      "resolution": "1k",
      "size_bytes": 574381,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
    },
    {
      "component": "Diffuse",
      "format": "png",
      "includes": [],
      "md5": "0fb8052e42bd6bc7141b28c481437a8b",
      "resolution": "1k",
      "size_bytes": 1782607,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_diffuse_1k.png"
    },
    {
      "component": "Displacement",
      "format": "exr",
      "includes": [],
      "md5": "d96682385c93fb425f8af69bd40efa46",
      "resolution": "1k",
      "size_bytes": 343530,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_displacement_1k.exr"
    },
    {
      "component": "Displacement",
      "format": "jpg",
      "includes": [],
      "md5": "b36f80cb6e16f7de8354bd1593263986",
      "resolution": "1k",
      "size_bytes": 172991,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_displacement_1k.jpg"
    },
    {
      "component": "Displacement",
      "format": "png",
      "includes": [],
      "md5": "2b5d461ef87420993fe52ff13753dcb1",
      "resolution": "1k",
      "size_bytes": 1874946,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_displacement_1k.png"
    },
    {
      "component": "gltf",
      "format": "gltf",
      "includes": [
        {
          "md5": "658b6a4923dd1b90c42e0d0595957743",
          "path": "brick_wall_001.bin",
          "size_bytes": 2370100,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/gltf/8k/brick_wall_001/brick_wall_001.bin"
        },
        {
          "md5": "955d2d4500eb549be0f2873305782798",
          "path": "textures/brick_wall_001_diffuse_1k.jpg",
          "size_bytes": 574381,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
        },
        {
          "md5": "be151875ed0897fc716aeef6daac8bd5",
          "path": "textures/brick_wall_001_nor_gl_1k.jpg",
          "size_bytes": 295279,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_nor_gl_1k.jpg"
        },
        {
          "md5": "618ceca60a4321aecc6d61eebe53d551",
          "path": "textures/brick_wall_001_rough_1k.jpg",
          "size_bytes": 211093,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
        }
      ],
      "md5": "f5950f35baa0a0b437d3726f1bb8984b",
      "resolution": "1k",
      "size_bytes": 3564,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/gltf/1k/brick_wall_001/brick_wall_001_1k.gltf"
    },
    {
      "component": "mtlx",
      "format": "mtlx",
      "includes": [
        {
          "md5": "955d2d4500eb549be0f2873305782798",
          "path": "textures/brick_wall_001_diffuse_1k.jpg",
          "size_bytes": 574381,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
        },
        {
          "md5": "2b5d461ef87420993fe52ff13753dcb1",
          "path": "textures/brick_wall_001_displacement_1k.png",
          "size_bytes": 1874946,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_displacement_1k.png"
        },
        {
          "md5": "2e1ea0448ff3209d35ac21b8f5917aec",
          "path": "textures/brick_wall_001_nor_gl_1k.exr",
          "size_bytes": 2241164,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_gl_1k.exr"
        },
        {
          "md5": "618ceca60a4321aecc6d61eebe53d551",
          "path": "textures/brick_wall_001_rough_1k.jpg",
          "size_bytes": 211093,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
        }
      ],
      "md5": "d013825720d161f6fd3e47abf951a581",
      "resolution": "1k",
      "size_bytes": 4729,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/mtlx/1k/brick_wall_001/brick_wall_001_1k.mtlx"
    },
    {
      "component": "nor_dx",
      "format": "exr",
      "includes": [],
      "md5": "7505dc1f2d40afa50c0b169c059a6c62",
      "resolution": "1k",
      "size_bytes": 2244408,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_dx_1k.exr"
    },
    {
      "component": "nor_dx",
      "format": "jpg",
      "includes": [],
      "md5": "11cef145def0b0c298dd94f33b7a2b0b",
      "resolution": "1k",
      "size_bytes": 295464,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_nor_dx_1k.jpg"
    },
    {
      "component": "nor_dx",
      "format": "png",
      "includes": [],
      "md5": "b830cedb12ef577f9bbb5c751159b8e1",
      "resolution": "1k",
      "size_bytes": 2562977,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_nor_dx_1k.png"
    },
    {
      "component": "nor_gl",
      "format": "exr",
      "includes": [],
      "md5": "2e1ea0448ff3209d35ac21b8f5917aec",
      "resolution": "1k",
      "size_bytes": 2241164,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_gl_1k.exr"
    },
    {
      "component": "nor_gl",
      "format": "jpg",
      "includes": [],
      "md5": "be151875ed0897fc716aeef6daac8bd5",
      "resolution": "1k",
      "size_bytes": 295279,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_nor_gl_1k.jpg"
    },
    {
      "component": "nor_gl",
      "format": "png",
      "includes": [],
      "md5": "99200c9dd07ae8bc85f5a027deea4b78",
      "resolution": "1k",
      "size_bytes": 2562545,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_nor_gl_1k.png"
    },
    {
      "component": "Rough",
      "format": "exr",
      "includes": [],
      "md5": "0d6e965a5c47196a7050b8e07217d07b",
      "resolution": "1k",
      "size_bytes": 587423,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_rough_1k.exr"
    },
    {
      "component": "Rough",
      "format": "jpg",
      "includes": [],
      "md5": "618ceca60a4321aecc6d61eebe53d551",
      "resolution": "1k",
      "size_bytes": 211093,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
    },
    {
      "component": "Rough",
      "format": "png",
      "includes": [],
      "md5": "29388613a9bd406979e5d82ba58e7dec",
      "resolution": "1k",
      "size_bytes": 412987,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_rough_1k.png"
    }
  ],
  "formats": [
    "blend",
    "exr",
    "gltf",
    "jpg",
    "mtlx",
    "png"
  ],
  "id": "brick_wall_001",
  "license": {
    "attribution_required": false,
    "commercial_use": true,
    "credit": "\"Brick Wall 001\" by Dimitrios Savva, Rob Tuytel, Poly Haven (https://polyhaven.com/a/brick_wall_001), CC0 1.0",
    "id": "CC0-1.0",
    "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
    "source_credit": "Powered by Poly Haven",
    "terms_url": "https://polyhaven.com/license",
    "url": "https://creativecommons.org/publicdomain/zero/1.0/"
  },
  "lods": null,
  "max_resolution": {
    "height": 8192,
    "width": 8192
  },
  "name": "Brick Wall 001",
  "observed_at_ms": 1793740477095,
  "page_url": "https://polyhaven.com/a/brick_wall_001",
  "polycount": null,
  "published_at": "2021-03-13T13:08:33Z",
  "resolutions": [
    "1k",
    "2k",
    "4k",
    "8k"
  ],
  "source_urls": [
    "https://api.polyhaven.com/info/brick_wall_001",
    "https://api.polyhaven.com/files/brick_wall_001"
  ],
  "tags": [
    "red",
    "rough",
    "industrial",
    "plain",
    "baked"
  ],
  "texel_density": null,
  "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/brick_wall_001.png?width=256&height=256&format=webp&v=99965586",
  "type": "texture",
  "vault": null,
  "whitebalance_k": null
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Get asset

- Capability: `graphics-assets/get_asset`
- Description: One Poly Haven asset by id or page URL: name, type, authors and roles, the CC0 licence block with a credit line, taxonomy category, tags, attributes, polycount, texel density and LODs for models, capture date, location and white balance for HDRIs, real-world size, thumbnail and page URL, plus every downloadable file flattened to component, resolution, format, public URL, size and md5 (bundles list the files they reference). Filter files by resolution and format. Returns URLs only; never downloads binaries.
- Instructions: Get direct download URLs for a chosen asset, e.g. the 4k jpg maps of a brick texture, the gltf of a model, or the 8k .hdr of an HDRI, together with its licence and authors.
- Cost: 5 credits per call
- Capability file: [Get asset](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/graphics-assets/get_asset)

Accepted options:
- `format` (string): Keep files of this format only, e.g. jpg, png, exr, hdr, gltf, blend, fbx, usd. Example: `<format>`
- `id` (string): Asset slug, e.g. brick_wall_001. Pattern: ^[A-Za-z0-9_.-]+$. Example: `<id>`
- `resolution` (string): Keep files of this resolution only, e.g. 1k, 4k, 16k. Example: `<resolution>`
- `url` (string): Asset page (https://polyhaven.com/a/<id>) or /info or /files API URL; used when id is absent. Example: `<url>`

Response schema example:
```json
{
  "attributes": {
    "condition": [
      "weathered",
      "worn",
      "damaged"
    ],
    "origin": "man_made",
    "setting": "either",
    "surface_use": "wall"
  },
  "author_notes": null,
  "authors": [
    {
      "name": "Dimitrios Savva",
      "role": "Photography"
    },
    {
      "name": "Rob Tuytel",
      "role": "Processing"
    }
  ],
  "categories": [
    "brick",
    "man made",
    "outdoor",
    "indoor",
    "clean",
    "wall"
  ],
  "category": "Brick & Block/Clay Brick/Running-Bond",
  "collections": [],
  "coordinates": null,
  "date_taken": null,
  "description": "Free 8K texture of a red, rough industrial brick wall with baked-in grime, chipped edges, varied mortar tones and pronounced surface relief.",
  "dimensions_mm": [
    3000,
    3000
  ],
  "download_count": 115589,
  "evs_cap": null,
  "file_count": 24,
  "file_filter": {
    "format": null,
    "resolution": "1k"
  },
  "files": [
    {
      "component": "AO",
      "format": "exr",
      "includes": [],
      "md5": "46cb8e3955edf1cfe245581bccb5a011",
      "resolution": "1k",
      "size_bytes": 655746,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_ao_1k.exr"
    },
    {
      "component": "AO",
      "format": "jpg",
      "includes": [],
      "md5": "aa63a3345a5217f34aae37a05344ce00",
      "resolution": "1k",
      "size_bytes": 269071,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_ao_1k.jpg"
    },
    {
      "component": "AO",
      "format": "png",
      "includes": [],
      "md5": "a7194fda48f7fc52a5f3c915b6ec40bb",
      "resolution": "1k",
      "size_bytes": 470899,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_ao_1k.png"
    },
    {
      "component": "arm",
      "format": "exr",
      "includes": [],
      "md5": "5d564e88e51a599e0323c5d60295a20e",
      "resolution": "1k",
      "size_bytes": 923369,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_arm_1k.exr"
    },
    {
      "component": "arm",
      "format": "jpg",
      "includes": [],
      "md5": "bb40df6639b15f56ecb484b350cbc45d",
      "resolution": "1k",
      "size_bytes": 123384,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_arm_1k.jpg"
    },
    {
      "component": "arm",
      "format": "png",
      "includes": [],
      "md5": "b2ed4ccc04ed25cfd682e4fe13200747",
      "resolution": "1k",
      "size_bytes": 1084907,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_arm_1k.png"
    },
    {
      "component": "blend",
      "format": "blend",
      "includes": [
        {
          "md5": "955d2d4500eb549be0f2873305782798",
          "path": "textures/brick_wall_001_diffuse_1k.jpg",
          "size_bytes": 574381,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
        },
        {
          "md5": "2b5d461ef87420993fe52ff13753dcb1",
          "path": "textures/brick_wall_001_displacement_1k.png",
          "size_bytes": 1874946,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_displacement_1k.png"
        },
        {
          "md5": "2e1ea0448ff3209d35ac21b8f5917aec",
          "path": "textures/brick_wall_001_nor_gl_1k.exr",
          "size_bytes": 2241164,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_gl_1k.exr"
        },
        {
          "md5": "618ceca60a4321aecc6d61eebe53d551",
          "path": "textures/brick_wall_001_rough_1k.jpg",
          "size_bytes": 211093,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
        }
      ],
      "md5": "cd0ad1b47170729dc6a44f50a8eb4f3d",
      "resolution": "1k",
      "size_bytes": 277899,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/blend/1k/brick_wall_001/brick_wall_001_1k.blend"
    },
    {
      "component": "Diffuse",
      "format": "exr",
      "includes": [],
      "md5": "df51e840e6ed826ca4d2478fe23c0718",
      "resolution": "1k",
      "size_bytes": 1658122,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_diffuse_1k.exr"
    },
    {
      "component": "Diffuse",
      "format": "jpg",
      "includes": [],
      "md5": "955d2d4500eb549be0f2873305782798",
      "resolution": "1k",
      "size_bytes": 574381,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
    },
    {
      "component": "Diffuse",
      "format": "png",
      "includes": [],
      "md5": "0fb8052e42bd6bc7141b28c481437a8b",
      "resolution": "1k",
      "size_bytes": 1782607,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_diffuse_1k.png"
    },
    {
      "component": "Displacement",
      "format": "exr",
      "includes": [],
      "md5": "d96682385c93fb425f8af69bd40efa46",
      "resolution": "1k",
      "size_bytes": 343530,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_displacement_1k.exr"
    },
    {
      "component": "Displacement",
      "format": "jpg",
      "includes": [],
      "md5": "b36f80cb6e16f7de8354bd1593263986",
      "resolution": "1k",
      "size_bytes": 172991,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_displacement_1k.jpg"
    },
    {
      "component": "Displacement",
      "format": "png",
      "includes": [],
      "md5": "2b5d461ef87420993fe52ff13753dcb1",
      "resolution": "1k",
      "size_bytes": 1874946,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_displacement_1k.png"
    },
    {
      "component": "gltf",
      "format": "gltf",
      "includes": [
        {
          "md5": "658b6a4923dd1b90c42e0d0595957743",
          "path": "brick_wall_001.bin",
          "size_bytes": 2370100,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/gltf/8k/brick_wall_001/brick_wall_001.bin"
        },
        {
          "md5": "955d2d4500eb549be0f2873305782798",
          "path": "textures/brick_wall_001_diffuse_1k.jpg",
          "size_bytes": 574381,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
        },
        {
          "md5": "be151875ed0897fc716aeef6daac8bd5",
          "path": "textures/brick_wall_001_nor_gl_1k.jpg",
          "size_bytes": 295279,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_nor_gl_1k.jpg"
        },
        {
          "md5": "618ceca60a4321aecc6d61eebe53d551",
          "path": "textures/brick_wall_001_rough_1k.jpg",
          "size_bytes": 211093,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
        }
      ],
      "md5": "f5950f35baa0a0b437d3726f1bb8984b",
      "resolution": "1k",
      "size_bytes": 3564,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/gltf/1k/brick_wall_001/brick_wall_001_1k.gltf"
    },
    {
      "component": "mtlx",
      "format": "mtlx",
      "includes": [
        {
          "md5": "955d2d4500eb549be0f2873305782798",
          "path": "textures/brick_wall_001_diffuse_1k.jpg",
          "size_bytes": 574381,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_diffuse_1k.jpg"
        },
        {
          "md5": "2b5d461ef87420993fe52ff13753dcb1",
          "path": "textures/brick_wall_001_displacement_1k.png",
          "size_bytes": 1874946,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_displacement_1k.png"
        },
        {
          "md5": "2e1ea0448ff3209d35ac21b8f5917aec",
          "path": "textures/brick_wall_001_nor_gl_1k.exr",
          "size_bytes": 2241164,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_gl_1k.exr"
        },
        {
          "md5": "618ceca60a4321aecc6d61eebe53d551",
          "path": "textures/brick_wall_001_rough_1k.jpg",
          "size_bytes": 211093,
          "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
        }
      ],
      "md5": "d013825720d161f6fd3e47abf951a581",
      "resolution": "1k",
      "size_bytes": 4729,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/mtlx/1k/brick_wall_001/brick_wall_001_1k.mtlx"
    },
    {
      "component": "nor_dx",
      "format": "exr",
      "includes": [],
      "md5": "7505dc1f2d40afa50c0b169c059a6c62",
      "resolution": "1k",
      "size_bytes": 2244408,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_dx_1k.exr"
    },
    {
      "component": "nor_dx",
      "format": "jpg",
      "includes": [],
      "md5": "11cef145def0b0c298dd94f33b7a2b0b",
      "resolution": "1k",
      "size_bytes": 295464,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_nor_dx_1k.jpg"
    },
    {
      "component": "nor_dx",
      "format": "png",
      "includes": [],
      "md5": "b830cedb12ef577f9bbb5c751159b8e1",
      "resolution": "1k",
      "size_bytes": 2562977,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_nor_dx_1k.png"
    },
    {
      "component": "nor_gl",
      "format": "exr",
      "includes": [],
      "md5": "2e1ea0448ff3209d35ac21b8f5917aec",
      "resolution": "1k",
      "size_bytes": 2241164,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_nor_gl_1k.exr"
    },
    {
      "component": "nor_gl",
      "format": "jpg",
      "includes": [],
      "md5": "be151875ed0897fc716aeef6daac8bd5",
      "resolution": "1k",
      "size_bytes": 295279,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_nor_gl_1k.jpg"
    },
    {
      "component": "nor_gl",
      "format": "png",
      "includes": [],
      "md5": "99200c9dd07ae8bc85f5a027deea4b78",
      "resolution": "1k",
      "size_bytes": 2562545,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_nor_gl_1k.png"
    },
    {
      "component": "Rough",
      "format": "exr",
      "includes": [],
      "md5": "0d6e965a5c47196a7050b8e07217d07b",
      "resolution": "1k",
      "size_bytes": 587423,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/exr/1k/brick_wall_001/brick_wall_001_rough_1k.exr"
    },
    {
      "component": "Rough",
      "format": "jpg",
      "includes": [],
      "md5": "618ceca60a4321aecc6d61eebe53d551",
      "resolution": "1k",
      "size_bytes": 211093,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/jpg/1k/brick_wall_001/brick_wall_001_rough_1k.jpg"
    },
    {
      "component": "Rough",
      "format": "png",
      "includes": [],
      "md5": "29388613a9bd406979e5d82ba58e7dec",
      "resolution": "1k",
      "size_bytes": 412987,
      "url": "https://dl.polyhaven.org/file/ph-assets/Textures/png/1k/brick_wall_001/brick_wall_001_rough_1k.png"
    }
  ],
  "formats": [
    "blend",
    "exr",
    "gltf",
    "jpg",
    "mtlx",
    "png"
  ],
  "id": "brick_wall_001",
  "license": {
    "attribution_required": false,
    "commercial_use": true,
    "credit": "\"Brick Wall 001\" by Dimitrios Savva, Rob Tuytel, Poly Haven (https://polyhaven.com/a/brick_wall_001), CC0 1.0",
    "id": "CC0-1.0",
    "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
    "source_credit": "Powered by Poly Haven",
    "terms_url": "https://polyhaven.com/license",
    "url": "https://creativecommons.org/publicdomain/zero/1.0/"
  },
  "lods": null,
  "max_resolution": {
    "height": 8192,
    "width": 8192
  },
  "name": "Brick Wall 001",
  "observed_at_ms": 1793740477095,
  "page_url": "https://polyhaven.com/a/brick_wall_001",
  "polycount": null,
  "published_at": "2021-03-13T13:08:33Z",
  "resolutions": [
    "1k",
    "2k",
    "4k",
    "8k"
  ],
  "source_urls": [
    "https://api.polyhaven.com/info/brick_wall_001",
    "https://api.polyhaven.com/files/brick_wall_001"
  ],
  "tags": [
    "red",
    "rough",
    "industrial",
    "plain",
    "baked"
  ],
  "texel_density": null,
  "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/brick_wall_001.png?width=256&height=256&format=webp&v=99965586",
  "type": "texture",
  "vault": null,
  "whitebalance_k": null
}
```

### List categories

- Capability: `graphics-assets/list_categories`
- Description: Poly Haven's category tree for one asset type (hdris, textures or models): taxonomy nodes with slug path, name, description, depth, parent and subcategory count, two levels deep by default or below a given parent, plus the older flat categories with asset counts.
- Instructions: Pick a valid category for search_assets, or see how the library is organised.
- Cost: 5 credits per call
- Capability file: [List categories](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/graphics-assets/list_categories)

Accepted options:
- `levels` (number): Levels below the top (or below parent) to include; default 2. Example: `6`
- `parent` (string): Slug path of a category to list the subcategories of, e.g. wood or furniture. Example: `<parent>`
- `type` (string, required): Asset type. Example: `hdris`

Response schema example:
```json
{
  "categories": [
    {
      "child_count": 3,
      "depth": 1,
      "description": "Bituminous paved surfaces.",
      "name": "Asphalt & Bitumen",
      "parent": null,
      "path": "Asphalt & Bitumen",
      "slug_path": "asphalt-bitumen"
    },
    {
      "child_count": 4,
      "depth": 2,
      "description": "Asphalt road/lot surfaces.",
      "name": "Asphalt",
      "parent": "asphalt-bitumen",
      "path": "Asphalt & Bitumen/Asphalt",
      "slug_path": "asphalt-bitumen/asphalt"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Damaged roads and markings.",
      "name": "Roads",
      "parent": "asphalt-bitumen",
      "path": "Asphalt & Bitumen/Roads",
      "slug_path": "asphalt-bitumen/roads"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Race tracks and tarred gravel.",
      "name": "Tracks",
      "parent": "asphalt-bitumen",
      "path": "Asphalt & Bitumen/Tracks",
      "slug_path": "asphalt-bitumen/tracks"
    },
    {
      "child_count": 3,
      "depth": 1,
      "description": "Modular masonry units (clay, concrete or cut stone) laid in courses/patterns.",
      "name": "Brick & Block",
      "parent": null,
      "path": "Brick & Block",
      "slug_path": "brick-block"
    },
    {
      "child_count": 4,
      "depth": 2,
      "description": "Fired-clay brick (any bond/finish).",
      "name": "Clay Brick",
      "parent": "brick-block",
      "path": "Brick & Block/Clay Brick",
      "slug_path": "brick-block/clay-brick"
    },
    {
      "child_count": 6,
      "depth": 2,
      "description": "Concrete blocks, bricks and pavers.",
      "name": "Concrete Block & Paver",
      "parent": "brick-block",
      "path": "Brick & Block/Concrete Block & Paver",
      "slug_path": "brick-block/concrete-block-paver"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Cut-stone bricks, blocks, ashlar and pavers (e.g. sandstone).",
      "name": "Stone Block & Paver",
      "parent": "brick-block",
      "path": "Brick & Block/Stone Block & Paver",
      "slug_path": "brick-block/stone-block-paver"
    },
    {
      "child_count": 4,
      "depth": 1,
      "description": "Fired ceramic, porcelain and clay tiles.",
      "name": "Ceramic",
      "parent": null,
      "path": "Ceramic",
      "slug_path": "ceramic"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Glazed ceramic & porcelain tiles.",
      "name": "Glazed Tiles",
      "parent": "ceramic",
      "path": "Ceramic/Glazed Tiles",
      "slug_path": "ceramic/glazed-tiles"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Matte unglazed/quarry ceramic.",
      "name": "Quarry & Unglazed",
      "parent": "ceramic",
      "path": "Ceramic/Quarry & Unglazed",
      "slug_path": "ceramic/quarry-unglazed"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Fired terracotta tiles & surfaces.",
      "name": "Terracotta",
      "parent": "ceramic",
      "path": "Ceramic/Terracotta",
      "slug_path": "ceramic/terracotta"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Terrazzo and mosaic.",
      "name": "Terrazzo & Mosaic",
      "parent": "ceramic",
      "path": "Ceramic/Terrazzo & Mosaic",
      "slug_path": "ceramic/terrazzo-mosaic"
    },
    {
      "child_count": 2,
      "depth": 1,
      "description": "Continuous cast cementitious surfaces and plaster.",
      "name": "Concrete",
      "parent": null,
      "path": "Concrete",
      "slug_path": "concrete"
    },
    {
      "child_count": 7,
      "depth": 2,
      "description": "Poured/precast concrete walls, floors, panels.",
      "name": "Cast Walls & Floors",
      "parent": "concrete",
      "path": "Concrete/Cast Walls & Floors",
      "slug_path": "concrete/cast-walls-floors"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Plaster, stucco and render finishes.",
      "name": "Plaster & Stucco",
      "parent": "concrete",
      "path": "Concrete/Plaster & Stucco",
      "slug_path": "concrete/plaster-stucco"
    },
    {
      "child_count": 3,
      "depth": 1,
      "description": "Glass surfaces (reserved/forward-looking).",
      "name": "Glass",
      "parent": null,
      "path": "Glass",
      "slug_path": "glass"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Clear and plate glass.",
      "name": "Clear",
      "parent": "glass",
      "path": "Glass/Clear",
      "slug_path": "glass/clear"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Frosted/textured glass.",
      "name": "Frosted",
      "parent": "glass",
      "path": "Glass/Frosted",
      "slug_path": "glass/frosted"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Stained/decorative glass.",
      "name": "Stained",
      "parent": "glass",
      "path": "Glass/Stained",
      "slug_path": "glass/stained"
    },
    {
      "child_count": 8,
      "depth": 1,
      "description": "Natural loose/organic ground surfaces.",
      "name": "Ground & Terrain",
      "parent": null,
      "path": "Ground & Terrain",
      "slug_path": "ground-terrain"
    },
    {
      "child_count": 6,
      "depth": 2,
      "description": "Leaf litter, needles, mulch, moss, roots.",
      "name": "Forest Floor",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Forest Floor",
      "slug_path": "ground-terrain/forest-floor"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Grass-dominant ground cover.",
      "name": "Grass & Vegetation",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Grass & Vegetation",
      "slug_path": "ground-terrain/grass-vegetation"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Gravel, pebbles, river stones, aggregate.",
      "name": "Gravel & Pebbles",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Gravel & Pebbles",
      "slug_path": "ground-terrain/gravel-pebbles"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Lunar/extraterrestrial ground.",
      "name": "Regolith",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Regolith",
      "slug_path": "ground-terrain/regolith"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Loose stones over soil; rocky trails.",
      "name": "Rocky Ground",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Rocky Ground",
      "slug_path": "ground-terrain/rocky-ground"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Beach, coastal and desert sand.",
      "name": "Sand",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Sand",
      "slug_path": "ground-terrain/sand"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Snow (and ice) ground.",
      "name": "Snow",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Snow",
      "slug_path": "ground-terrain/snow"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Dirt, mud, cracked earth, clay ground.",
      "name": "Soil & Mud",
      "parent": "ground-terrain",
      "path": "Ground & Terrain/Soil & Mud",
      "slug_path": "ground-terrain/soil-mud"
    },
    {
      "child_count": 3,
      "depth": 1,
      "description": "Metallic surfaces, by form.",
      "name": "Metal",
      "parent": null,
      "path": "Metal",
      "slug_path": "metal"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Metal cladding, shutters, container panels.",
      "name": "Cladding & Shutters",
      "parent": "metal",
      "path": "Metal/Cladding & Shutters",
      "slug_path": "metal/cladding-shutters"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Diamond/checker plate, grating, mesh.",
      "name": "Plate & Grating",
      "parent": "metal",
      "path": "Metal/Plate & Grating",
      "slug_path": "metal/plate-grating"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Corrugated iron and flat sheet metal.",
      "name": "Sheet & Corrugated",
      "parent": "metal",
      "path": "Metal/Sheet & Corrugated",
      "slug_path": "metal/sheet-corrugated"
    },
    {
      "child_count": 4,
      "depth": 1,
      "description": "Plant-based and biological surfaces.",
      "name": "Organic",
      "parent": null,
      "path": "Organic",
      "slug_path": "organic"
    },
    {
      "child_count": 1,
      "depth": 2,
      "description": "Food/edible surfaces (flour, grains).",
      "name": "Food",
      "parent": "organic",
      "path": "Organic/Food",
      "slug_path": "organic/food"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Leaf/foliage surfaces.",
      "name": "Plant Matter",
      "parent": "organic",
      "path": "Organic/Plant Matter",
      "slug_path": "organic/plant-matter"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Biological skin and scale.",
      "name": "Skin & Scales",
      "parent": "organic",
      "path": "Organic/Skin & Scales",
      "slug_path": "organic/skin-scales"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Thatch, reed and straw.",
      "name": "Thatch & Reed",
      "parent": "organic",
      "path": "Organic/Thatch & Reed",
      "slug_path": "organic/thatch-reed"
    },
    {
      "child_count": 3,
      "depth": 1,
      "description": "Paper-based surfaces.",
      "name": "Paper & Card",
      "parent": null,
      "path": "Paper & Card",
      "slug_path": "paper-card"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Cardboard and corrugated card.",
      "name": "Cardboard",
      "parent": "paper-card",
      "path": "Paper & Card/Cardboard",
      "slug_path": "paper-card/cardboard"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Paper surfaces.",
      "name": "Paper",
      "parent": "paper-card",
      "path": "Paper & Card/Paper",
      "slug_path": "paper-card/paper"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Wall coverings.",
      "name": "Wallpaper",
      "parent": "paper-card",
      "path": "Paper & Card/Wallpaper",
      "slug_path": "paper-card/wallpaper"
    },
    {
      "child_count": 4,
      "depth": 1,
      "description": "Polymer materials.",
      "name": "Plastic & Rubber",
      "parent": null,
      "path": "Plastic & Rubber",
      "slug_path": "plastic-rubber"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Foam and polystyrene.",
      "name": "Foam",
      "parent": "plastic-rubber",
      "path": "Plastic & Rubber/Foam",
      "slug_path": "plastic-rubber/foam"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Rigid and sheet plastics.",
      "name": "Plastic",
      "parent": "plastic-rubber",
      "path": "Plastic & Rubber/Plastic",
      "slug_path": "plastic-rubber/plastic"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Rubber tiles and surfaces.",
      "name": "Rubber",
      "parent": "plastic-rubber",
      "path": "Plastic & Rubber/Rubber",
      "slug_path": "plastic-rubber/rubber"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Vinyl and linoleum sheet/flooring.",
      "name": "Vinyl & Linoleum",
      "parent": "plastic-rubber",
      "path": "Plastic & Rubber/Vinyl & Linoleum",
      "slug_path": "plastic-rubber/vinyl-linoleum"
    },
    {
      "child_count": 4,
      "depth": 1,
      "description": "Natural rock — faces, rubble, cobbles and slabs.",
      "name": "Stone",
      "parent": null,
      "path": "Stone",
      "slug_path": "stone"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Stone laid as a paved surface: cobbles, setts and pavers. Large flat slabs belong under Stone/Slabs & Tiles.",
      "name": "Cobblestone & Paving",
      "parent": "stone",
      "path": "Stone/Cobblestone & Paving",
      "slug_path": "stone/cobblestone-paving"
    },
    {
      "child_count": 6,
      "depth": 2,
      "description": "Natural rock faces, cliffs and boulders.",
      "name": "Rock & Cliffs",
      "parent": "stone",
      "path": "Stone/Rock & Cliffs",
      "slug_path": "stone/rock-cliffs"
    },
    {
      "child_count": 7,
      "depth": 2,
      "description": "Cut natural-stone slabs/tiles by type.",
      "name": "Slabs & Tiles",
      "parent": "stone",
      "path": "Stone/Slabs & Tiles",
      "slug_path": "stone/slabs-tiles"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Irregular/rubble natural-stone walls.",
      "name": "Walls & Rubble",
      "parent": "stone",
      "path": "Stone/Walls & Rubble",
      "slug_path": "stone/walls-rubble"
    },
    {
      "child_count": 9,
      "depth": 1,
      "description": "Woven, knitted and hide materials.",
      "name": "Textiles & Leather",
      "parent": null,
      "path": "Textiles & Leather",
      "slug_path": "textiles-leather"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Carpet, tatami, woven mats.",
      "name": "Carpet & Matting",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Carpet & Matting",
      "slug_path": "textiles-leather/carpet-matting"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Denim and twill.",
      "name": "Denim",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Denim",
      "slug_path": "textiles-leather/denim"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Jersey, fleece, knitted.",
      "name": "Knit",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Knit",
      "slug_path": "textiles-leather/knit"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Leather and hide (real or faux).",
      "name": "Leather",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Leather",
      "slug_path": "textiles-leather/leather"
    },
    {
      "child_count": 3,
      "depth": 2,
      "description": "Jacquard, brocade, decorative weaves.",
      "name": "Patterned & Jacquard",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Patterned & Jacquard",
      "slug_path": "textiles-leather/patterned-jacquard"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Velvet, corduroy, fur, plush pile.",
      "name": "Pile & Velvet",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Pile & Velvet",
      "slug_path": "textiles-leather/pile-velvet"
    },
    {
      "child_count": 0,
      "depth": 2,
      "description": "Hessian, jute, burlap.",
      "name": "Sackcloth",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Sackcloth",
      "slug_path": "textiles-leather/sackcloth"
    },
    {
      "child_count": 2,
      "depth": 2,
      "description": "Performance/stretch/neoprene fabrics.",
      "name": "Technical",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Technical",
      "slug_path": "textiles-leather/technical"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Plain woven cottons, linen, satin.",
      "name": "Woven",
      "parent": "textiles-leather",
      "path": "Textiles & Leather/Woven",
      "slug_path": "textiles-leather/woven"
    },
    {
      "child_count": 4,
      "depth": 1,
      "description": "Natural and processed wood/timber surfaces.",
      "name": "Wood",
      "parent": null,
      "path": "Wood",
      "slug_path": "wood"
    },
    {
      "child_count": 5,
      "depth": 2,
      "description": "Tree-bark scans.",
      "name": "Bark",
      "parent": "wood",
      "path": "Wood/Bark",
      "slug_path": "wood/bark"
    },
    {
      "child_count": 8,
      "depth": 2,
      "description": "Sawn timber: planks, siding, parquet, panelling.",
      "name": "Boards & Planks",
      "parent": "wood",
      "path": "Wood/Boards & Planks",
      "slug_path": "wood/boards-planks"
    },
    {
      "child_count": 4,
      "depth": 2,
      "description": "Plywood, OSB, laminate, wood-look board.",
      "name": "Engineered Wood",
      "parent": "wood",
      "path": "Wood/Engineered Wood",
      "slug_path": "wood/engineered-wood"
    },
    {
      "child_count": 6,
      "depth": 2,
      "description": "Thin sheet wood veneers.",
      "name": "Veneer",
      "parent": "wood",
      "path": "Wood/Veneer",
      "slug_path": "wood/veneer"
    }
  ],
  "count": 67,
  "legacy_categories": [
    {
      "count": 507,
      "name": "outdoor"
    },
    {
      "count": 435,
      "name": "man made"
    },
    {
      "count": 271,
      "name": "floor"
    },
    {
      "count": 244,
      "name": "wall"
    },
    {
      "count": 174,
      "name": "natural"
    },
    {
      "count": 138,
      "name": "wood"
    },
    {
      "count": 136,
      "name": "plaster-concrete"
    },
    {
      "count": 131,
      "name": "terrain"
    },
    {
      "count": 125,
      "name": "rock"
    },
    {
      "count": 117,
      "name": "dirty"
    },
    {
      "count": 108,
      "name": "brick"
    },
    {
      "count": 80,
      "name": "concrete"
    },
    {
      "count": 76,
      "name": "indoor"
    },
    {
      "count": 60,
      "name": "sand"
    },
    {
      "count": 55,
      "name": "raw wood"
    },
    {
      "count": 50,
      "name": "clean"
    },
    {
      "count": 43,
      "name": "fabric"
    },
    {
      "count": 38,
      "name": "cobblestone"
    },
    {
      "count": 36,
      "name": "road"
    },
    {
      "count": 33,
      "name": "plaster"
    },
    {
      "count": 30,
      "name": "aerial"
    },
    {
      "count": 25,
      "name": "metal"
    },
    {
      "count": 24,
      "name": "bark"
    },
    {
      "count": 23,
      "name": "roofing"
    },
    {
      "count": 20,
      "name": "asphalt"
    },
    {
      "count": 20,
      "name": "collection: moon"
    },
    {
      "count": 14,
      "name": "tiles"
    },
    {
      "count": 13,
      "name": "gravel"
    },
    {
      "count": 11,
      "name": "sandstone"
    },
    {
      "count": 8,
      "name": "snow"
    },
    {
      "count": 7,
      "name": "collection: verdant_trail"
    },
    {
      "count": 7,
      "name": "cotton"
    },
    {
      "count": 6,
      "name": "denim"
    },
    {
      "count": 6,
      "name": "leather"
    },
    {
      "count": 6,
      "name": "stretchy"
    },
    {
      "count": 5,
      "name": "collection: namaqualand"
    },
    {
      "count": 5,
      "name": "collection: smugglers_cove"
    },
    {
      "count": 5,
      "name": "collection: the_shed"
    },
    {
      "count": 4,
      "name": "collection: pine_forest"
    },
    {
      "count": 4,
      "name": "fleece"
    },
    {
      "count": 4,
      "name": "knitted"
    },
    {
      "count": 4,
      "name": "wool"
    },
    {
      "count": 3,
      "name": "fur"
    },
    {
      "count": 3,
      "name": "hessian"
    },
    {
      "count": 2,
      "name": "crepe"
    },
    {
      "count": 2,
      "name": "food"
    },
    {
      "count": 2,
      "name": "industrial"
    },
    {
      "count": 2,
      "name": "jacquard"
    },
    {
      "count": 1,
      "name": "carpet"
    },
    {
      "count": 1,
      "name": "corduroy"
    },
    {
      "count": 1,
      "name": "satin"
    },
    {
      "count": 1,
      "name": "suede"
    },
    {
      "count": 1,
      "name": "velvet"
    },
    {
      "count": 1,
      "name": "woven"
    }
  ],
  "levels": 2,
  "observed_at_ms": 1793740477116,
  "parent": null,
  "source_urls": [
    "https://api.polyhaven.com/taxonomy",
    "https://api.polyhaven.com/categories/textures"
  ],
  "total_assets": 869,
  "type": "textures"
}
```

### Search assets

- Capability: `graphics-assets/search_assets`
- Description: Search Poly Haven's CC0 library of HDRIs, textures and models. Filters by type, category (a taxonomy path such as wood/engineered-wood, or an older flat category such as denim), words in the name, tags, categories and description, and author; sorts by relevance, downloads, newest or name; pages with continuation. Each asset carries authors, the CC0 licence block, polycount, size, thumbnail and its page URL. Accepts a polyhaven.com library URL.
- Instructions: Find free CC0 assets for a render or game: "4k brick PBR textures", "sunset HDRIs", "wooden chair models", or everything in a category or by an author. Use get_asset next for file URLs.
- Cost: 5 credits per call
- Capability file: [Search assets](https://firecrawl.dev/alexandria/agents/providers/polyhaven-com/graphics-assets/search_assets)

Accepted options:
- `author` (string): Author name, case-insensitive exact match, e.g. Rob Tuytel. Example: `<author>`
- `category` (string): Taxonomy slug path from list_categories (e.g. brick-block, wood/engineered-wood, furniture) or an older flat category (e.g. denim, outdoor). Example: `<category>`
- `continuation` (string): Cursor from a previous call. Example: `<continuation>`
- `limit` (number): Assets per page; default 20. Example: `10`
- `query` (string): Words to match in name, id, tags, categories and description. Generic words (free, cc0, model, texture, hdri) are ignored. Example: `<query>`
- `sort` (string): Default relevance with a query, otherwise downloads. Example: `relevance`
- `type` (string): Asset type; default all. Example: `hdris`
- `url` (string): A library URL (https://polyhaven.com/textures/wood) or an /assets API URL; supplies type and category unless those are given. Example: `<url>`

Response schema example:
```json
{
  "assets": [
    {
      "attributes": {
        "condition": [
          "weathered"
        ],
        "origin": "man_made",
        "setting": "outdoor",
        "surface_use": "wall"
      },
      "authors": [
        {
          "name": "Rob Tuytel",
          "role": "All"
        }
      ],
      "categories": [
        "wall",
        "brick",
        "man made"
      ],
      "category": "Brick & Block/Clay Brick/Running-Bond",
      "collections": [],
      "description": "Free 16K texture of red brick wall with rough, weathered surfaces, varied warm tones and recessed grey mortar, strong surface detail and subtle chipped edges.",
      "dimensions_mm": [
        1399.999976158142,
        1399.999976158142
      ],
      "download_count": 181482,
      "id": "red_brick",
      "license": {
        "attribution_required": false,
        "commercial_use": true,
        "credit": "\"Red Brick\" by Rob Tuytel, Poly Haven (https://polyhaven.com/a/red_brick), CC0 1.0",
        "id": "CC0-1.0",
        "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
        "source_credit": "Powered by Poly Haven",
        "terms_url": "https://polyhaven.com/license",
        "url": "https://creativecommons.org/publicdomain/zero/1.0/"
      },
      "max_resolution": {
        "height": 16384,
        "width": 16384
      },
      "name": "Red Brick",
      "page_url": "https://polyhaven.com/a/red_brick",
      "polycount": null,
      "published_at": "2024-10-17T00:00:00Z",
      "tags": [
        "brick",
        "bricks",
        "wall",
        "red brick",
        "brick wall",
        "rough",
        "exterior"
      ],
      "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/red_brick.png?width=256&height=256&format=webp&v=cde84146",
      "type": "texture"
    },
    {
      "attributes": {
        "condition": [
          "weathered"
        ],
        "origin": "man_made",
        "setting": "outdoor",
        "surface_use": "wall"
      },
      "authors": [
        {
          "name": "Rob Tuytel",
          "role": "All"
        }
      ],
      "categories": [
        "outdoor",
        "wall",
        "clean",
        "man made",
        "brick"
      ],
      "category": "Brick & Block/Clay Brick/Running-Bond",
      "collections": [],
      "description": "Free 8K red brick texture with weathered industrial bricks, rough matte surface, defined mortar joints, slight soot and brownish color variation.",
      "dimensions_mm": [
        1000,
        1000
      ],
      "download_count": 146505,
      "id": "red_brick_03",
      "license": {
        "attribution_required": false,
        "commercial_use": true,
        "credit": "\"Red Brick 03\" by Rob Tuytel, Poly Haven (https://polyhaven.com/a/red_brick_03), CC0 1.0",
        "id": "CC0-1.0",
        "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
        "source_credit": "Powered by Poly Haven",
        "terms_url": "https://polyhaven.com/license",
        "url": "https://creativecommons.org/publicdomain/zero/1.0/"
      },
      "max_resolution": {
        "height": 8192,
        "width": 8192
      },
      "name": "Red Brick 03",
      "page_url": "https://polyhaven.com/a/red_brick_03",
      "polycount": null,
      "published_at": "2018-06-28T07:41:14Z",
      "tags": [
        "red",
        "industrial",
        "factory",
        "brown"
      ],
      "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/red_brick_03.png?width=256&height=256&format=webp&v=ecc91b8b",
      "type": "texture"
    },
    {
      "attributes": {
        "condition": [
          "weathered",
          "damaged"
        ],
        "origin": "man_made",
        "setting": "outdoor",
        "surface_use": "wall"
      },
      "authors": [
        {
          "name": "Rob Tuytel",
          "role": "All"
        }
      ],
      "categories": [
        "brick",
        "outdoor",
        "man made",
        "wall",
        "dirty"
      ],
      "category": "Brick & Block/Clay Brick/Running-Bond",
      "collections": [],
      "description": "Free 8K texture of old red castle brick with rough, uneven surfaces, damp discoloration, weathered mortar and gritty, dirty detailing.",
      "dimensions_mm": [
        1500,
        1500
      ],
      "download_count": 133264,
      "id": "castle_brick_02_red",
      "license": {
        "attribution_required": false,
        "commercial_use": true,
        "credit": "\"Castle Brick 02 Red\" by Rob Tuytel, Poly Haven (https://polyhaven.com/a/castle_brick_02_red), CC0 1.0",
        "id": "CC0-1.0",
        "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
        "source_credit": "Powered by Poly Haven",
        "terms_url": "https://polyhaven.com/license",
        "url": "https://creativecommons.org/publicdomain/zero/1.0/"
      },
      "max_resolution": {
        "height": 8192,
        "width": 8192
      },
      "name": "Castle Brick 02 Red",
      "page_url": "https://polyhaven.com/a/castle_brick_02_red",
      "polycount": null,
      "published_at": "2019-10-23T02:29:20Z",
      "tags": [
        "rough",
        "red",
        "sewer",
        "damp",
        "old",
        "uneven"
      ],
      "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/castle_brick_02_red.png?width=256&height=256&format=webp&v=fd920d58",
      "type": "texture"
    },
    {
      "attributes": {
        "condition": [
          "weathered"
        ],
        "origin": "man_made",
        "setting": "outdoor",
        "surface_use": "wall"
      },
      "authors": [
        {
          "name": "Rob Tuytel",
          "role": "All"
        }
      ],
      "categories": [
        "outdoor",
        "man made",
        "wall",
        "brick"
      ],
      "category": "Brick & Block/Clay Brick/Running-Bond",
      "collections": [],
      "description": "Free 8K texture of red, uneven baked bricks with rough surface, weathered edges and clean mortar; urban, detailed wall material.",
      "dimensions_mm": [
        2500,
        2500
      ],
      "download_count": 103468,
      "id": "red_bricks_04",
      "license": {
        "attribution_required": false,
        "commercial_use": true,
        "credit": "\"Red Bricks 04\" by Rob Tuytel, Poly Haven (https://polyhaven.com/a/red_bricks_04), CC0 1.0",
        "id": "CC0-1.0",
        "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
        "source_credit": "Powered by Poly Haven",
        "terms_url": "https://polyhaven.com/license",
        "url": "https://creativecommons.org/publicdomain/zero/1.0/"
      },
      "max_resolution": {
        "height": 8192,
        "width": 8192
      },
      "name": "Red Bricks 04",
      "page_url": "https://polyhaven.com/a/red_bricks_04",
      "polycount": null,
      "published_at": "2021-10-05T00:00:00Z",
      "tags": [
        "textured",
        "bricks",
        "baked",
        "rough",
        "uneven",
        "urban",
        "clean",
        "red"
      ],
      "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/red_bricks_04.png?width=256&height=256&format=webp&v=dc99f93b",
      "type": "texture"
    },
    {
      "attributes": {
        "condition": [
          "weathered",
          "damaged"
        ],
        "origin": "man_made",
        "setting": "outdoor",
        "surface_use": "wall"
      },
      "authors": [
        {
          "name": "Rob Tuytel",
          "role": "All"
        }
      ],
      "categories": [
        "wall",
        "brick",
        "man made"
      ],
      "category": "Brick & Block/Clay Brick/Running-Bond",
      "collections": [],
      "description": "Free 16K texture of medieval red fired brick: rough, weathered bricks with chipped edges, deep mortar joints, varied red-brown tones and gritty surface detail.",
      "dimensions_mm": [
        2000,
        2000
      ],
      "download_count": 70256,
      "id": "medieval_red_brick",
      "license": {
        "attribution_required": false,
        "commercial_use": true,
        "credit": "\"Medieval Red Brick\" by Rob Tuytel, Poly Haven (https://polyhaven.com/a/medieval_red_brick), CC0 1.0",
        "id": "CC0-1.0",
        "name": "Creative Commons CC0 1.0 Universal (public domain dedication)",
        "source_credit": "Powered by Poly Haven",
        "terms_url": "https://polyhaven.com/license",
        "url": "https://creativecommons.org/publicdomain/zero/1.0/"
      },
      "max_resolution": {
        "height": 16384,
        "width": 16384
      },
      "name": "Medieval Red Brick",
      "page_url": "https://polyhaven.com/a/medieval_red_brick",
      "polycount": null,
      "published_at": "2024-04-08T00:00:00Z",
      "tags": [
        "concrete",
        "medieval",
        "red",
        "brick",
        "bricks",
        "red brick",
        "walling",
        "building material",
        "structural",
        "textured",
        "fired brick"
      ],
      "thumbnail_url": "https://cdn.polyhaven.com/asset_img/thumbs/medieval_red_brick.png?width=256&height=256&format=webp&v=f0f5ce92",
      "type": "texture"
    }
  ],
  "author": null,
  "category": "brick-block",
  "category_vocabulary": "taxonomy",
  "count": 5,
  "observed_at_ms": 1793740477168,
  "offset": 0,
  "query": "red brick",
  "sort": "relevance",
  "source_url": "https://api.polyhaven.com/assets?type=textures&category=brick-block",
  "total": 155,
  "type": "textures"
}
```
