> For the complete documentation index, see [llms.txt](https://dev.guardian.hedera.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dev.guardian.hedera.com/guardian/standard-registry/policies/modules/modules-apis/returns-all-modules.md).

# Returns all Modules

**`GET /modules`**

Returns all modules. Only users with the Standard Registry role are allowed to make the request.

**Authentication:** Bearer token required (`Authorization: Bearer <token>`)

**Permission:** `Permissions.MODULES_MODULE_READ`

***

## Request

### Query Parameters

| Parameter   | Type    | Required | Description                                                           |
| ----------- | ------- | -------- | --------------------------------------------------------------------- |
| `pageIndex` | Integer | No       | The number of pages to skip before starting to collect the result set |
| `pageSize`  | Integer | No       | The number of items to return                                         |

***

## Response

### Success Response

**Status:** `200 OK`

Returns an array of module objects. The total item count is provided in the `X-Total-Count` response header.

```json
[
  {
    "id": "f3b2a9c1e4d5678901234567",
    "uuid": "f3b2a9c1e4d5678901234567",
    "name": "Module name",
    "description": "Description",
    "status": "DRAFT",
    "creator": "did:hedera:testnet:...",
    "owner": "did:hedera:testnet:...",
    "topicId": "0.0.5000001",
    "messageId": "1700000000.000000001"
  }
]
```

### Error Responses

| Status                      | Description               |
| --------------------------- | ------------------------- |
| `401 Unauthorized`          | Missing or invalid token  |
| `403 Forbidden`             | Insufficient permissions  |
| `500 Internal Server Error` | Unexpected server failure |
