## List Agents

`agents.list(AgentListParams**kwargs)  -> AgentListResponse`

**get** `/agents`

List all registered agents, optionally filtered by query parameters.

### Parameters

- `agent_card_metadata: Optional[str]`

  JSON-encoded object used to filter agents on `registration_metadata.agent_card.metadata` via JSONB containment. Example: {"permits_capable": true}. Only matches cards published through the direct registration path: registrations that carry a `deployment_id` write the card to the deployment record instead of `registration_metadata`, so those agents never match this filter.

- `limit: Optional[int]`

  Limit

- `order_by: Optional[str]`

  Field to order by

- `order_direction: Optional[str]`

  Order direction (asc or desc)

- `page_number: Optional[int]`

  Page number

- `task_id: Optional[str]`

  Task ID

### Returns

- `List[Agent]`

  - `id: str`

    The unique identifier of the agent.

  - `acp_type: AcpType`

    The type of the ACP Server (Either sync or async)

    - `"sync"`

    - `"async"`

    - `"agentic"`

  - `created_at: datetime`

    The timestamp when the agent was created

  - `description: str`

    The description of the action.

  - `name: str`

    The unique name of the agent.

  - `updated_at: datetime`

    The timestamp when the agent was last updated

  - `agent_input_type: Optional[Literal["text", "json"]]`

    The type of input the agent expects.

    - `"text"`

    - `"json"`

  - `production_deployment_id: Optional[str]`

    ID of the current production deployment.

  - `registered_at: Optional[datetime]`

    The timestamp when the agent was last registered

  - `registration_metadata: Optional[Dict[str, object]]`

    The metadata for the agent's registration.

  - `status: Optional[Literal["Ready", "Failed", "Unknown", 3 more]]`

    The status of the action, indicating if it's building, ready, failed, etc.

    - `"Ready"`

    - `"Failed"`

    - `"Unknown"`

    - `"Deleted"`

    - `"Unhealthy"`

    - `"BuildOnly"`

  - `status_reason: Optional[str]`

    The reason for the status of the action.

### Example

```python
import os
from agentex import Agentex

client = Agentex(
    api_key=os.environ.get("AGENTEX_SDK_API_KEY"),  # This is the default and can be omitted
)
agents = client.agents.list()
print(agents)
```

#### Response

```json
[
  {
    "id": "id",
    "acp_type": "sync",
    "created_at": "2019-12-27T18:11:19.117Z",
    "description": "description",
    "name": "name",
    "updated_at": "2019-12-27T18:11:19.117Z",
    "agent_input_type": "text",
    "production_deployment_id": "production_deployment_id",
    "registered_at": "2019-12-27T18:11:19.117Z",
    "registration_metadata": {
      "foo": "bar"
    },
    "status": "Ready",
    "status_reason": "status_reason"
  }
]
```
