---
title: "List pentest scope assets"
method: GET
path: "/v1/pentests/{pentest_slug}/scope/assets/"
tags: ["pentests"]
---

# List pentest scope assets

`GET /v1/pentests/{pentest_slug}/scope/assets/`

## Request

- Base URL: `https://api.ethiack.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.ethiack.com/v1/pentests/{pentest_slug}/scope/assets/`
- Auth: none declared

List the pentest's scope assets, filterable by scope membership.

Supports filtering by in-scope status and asset identifier.

Args:
    pentest_id (int): The parent pentest, resolved and access-checked
        by the router's gate.
    db (AsyncSession): Request-scoped database session.
    context (ActiveContext): Resolved caller identity and scope.
    query (PentestAssetQuery): Pagination + optional in_scope/asset_id.
    pager (Paginator): Fills the response's navigation metadata.

Returns:
    PentestAssetListResponse: The authorized, paginated scope
        asset list.

## Path parameters

- `pentest_slug` string, required

## Query parameters

- `page` integer
- `per_page` integer: Page size. Values above 500 are clamped to it (or rejected, per REST__PAGINATION__PER_PAGE_OVER_MAX).
- `in_scope` boolean, nullable
- `asset_id` integer, nullable

## Response `200`

Successful Response

- PentestAssetListResponse: Paginated list of pentest assets. Shared by the paginated ``list_pentest_scope_assets`` read and, as a nested field, by ``PentestScopeResponse`` (the non-paginated ``GET``/``PATCH /scope/`` combined in/out-of-scope view). Those two routes exclude ``total``/``page``/``per_page``/``links`` on each nested list via ``response_model_exclude`` so they keep their pre-pagination shape. Attributes: assets (list[PentestAssetResponse]): Pentest-asset objects.
  - `total` integer, nullable
  - `page` integer, nullable
  - `per_page` integer, nullable
  - `_links` object, nullable: RFC 8288 rel to URL. Always first; last unless the route opted out of counting; prev and next when applicable.
  - `assets` PentestAssetResponse[], required
    - `id` integer, required
    - `value` string, required
    - `type` string, required
    - `in_scope` boolean, required
    - `private` boolean, nullable
    - `description` string, nullable
    - `wildcard` boolean
    - `beacon_id` integer, nullable
    - `attachment_url` string, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ethiack/apis/ethiack-api.md) - [All operations](https://skmtc.dev/ethiack/apis/ethiack-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ethiack/apis/ethiack-api/revisions/4eaba89bfebf?raw)
