> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Context.dev: Contextdev List Monitors

> List monitors. Context.dev Contextdev List Monitors reference includes SDK V2 and CLI requests, input constraints, response fields, and Deepline cost.

List monitors.

<Info>
  Tool ID: `contextdev_list_monitors`
</Info>

## Run this action

Use the TypeScript SDK for a single call. Put `ctx.tools.execute(...)` inside a Play when the call should be durable, scheduled, or run across a CSV.

```ts theme={null}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'contextdev_list_monitors',
  {
    "q": "software companies hiring engineers",
    "search_by": [
      "name"
    ],
    "search_type": "exact"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={null}
deepline tools execute contextdev_list_monitors --input '{
  "q": "software companies hiring engineers",
  "search_by": [
    "name"
  ],
  "search_type": "exact"
}' --json
```

## Example response

The SDK exposes this shape at `result.toolResponse.raw`. Values below are representative.

```json theme={null}
{
  "data": {
    "data": [
      {
        "mode": "web",
        "id": "id_123",
        "name": "Example",
        "target": {},
        "change_detection": {},
        "schedule": {},
        "status": "active",
        "created_at": "2026-01-15T12:00:00Z",
        "updated_at": "2026-01-15T12:00:00Z"
      }
    ],
    "has_more": true,
    "next_cursor": "cursor_123"
  }
}
```

Use `deepline tools get contextdev_list_monitors --json` for the latest machine-readable contract.

## Input reference

Lists monitors for the authenticated organization. Supports free-text search (`q` over `search_by` fields, `prefix` or `exact` via `search_type`) plus status/type/tag filters. Results are paginated via the opaque `cursor`.

| Name                            | Type                               | Required | Default | Details                                                                                                                  |
| ------------------------------- | ---------------------------------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------ |
| `payload.q`                     | `string`                           | No       | —       | Free-text search term, matched against the fields named in `search_by`. Maximum length: 200.                             |
| `payload.search_by`             | `array`                            | No       | —       | Comma-separated fields to search with `q`. Defaults to all of them. Note `instructions` only exists on extract monitors. |
| `payload.search_type`           | `"exact" \| "prefix"`              | No       | —       | `prefix` for as-you-type prefix matching (default), `exact` for full-token matching. Allowed: `exact`, `prefix`.         |
| `payload.status`                | `"active" \| "paused" \| "failed"` | No       | —       | Filter monitors by lifecycle status. Allowed: `active`, `paused`, `failed`.                                              |
| `payload.target_type`           | `"page" \| "sitemap" \| "extract"` | No       | —       | Filter by target type. Allowed: `page`, `sitemap`, `extract`.                                                            |
| `payload.change_detection_type` | `"exact" \| "semantic"`            | No       | —       | Filter by change detection type. Allowed: `exact`, `semantic`.                                                           |
| `payload.tags`                  | `array`                            | No       | —       | Comma-separated list of tags to filter by (matches monitors having any of them). Maximum items: 20.                      |
| `payload.tag`                   | `string`                           | No       | —       | Filter to items that have this tag.                                                                                      |
| `payload.limit`                 | `integer`                          | No       | —       | Maximum number of items to return per page (1-100). Defaults to 25. Minimum: 1. Maximum: 100.                            |
| `payload.cursor`                | `string`                           | No       | —       | Opaque pagination cursor from a previous response.                                                                       |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Lists monitors for the authenticated organization. Supports free-text search (`q` over `search_by` fields, `prefix` or `exact` via `search_type`) plus status/type/tag filters. Results are paginated via the opaque `cursor`.",
    "properties": {
      "q": {
        "type": "string",
        "description": "Free-text search term, matched against the fields named in `search_by`.",
        "maxLength": 200
      },
      "search_by": {
        "type": [
          "array",
          "null"
        ],
        "description": "Comma-separated fields to search with `q`. Defaults to all of them. Note `instructions` only exists on extract monitors.",
        "items": {
          "type": "string",
          "enum": [
            "name",
            "url",
            "instructions",
            "tags"
          ]
        }
      },
      "search_type": {
        "type": "string",
        "description": "`prefix` for as-you-type prefix matching (default), `exact` for full-token matching.",
        "enum": [
          "exact",
          "prefix"
        ]
      },
      "status": {
        "type": "string",
        "description": "Filter monitors by lifecycle status.",
        "enum": [
          "active",
          "paused",
          "failed"
        ]
      },
      "target_type": {
        "type": "string",
        "description": "Filter by target type.",
        "enum": [
          "page",
          "sitemap",
          "extract"
        ]
      },
      "change_detection_type": {
        "type": "string",
        "description": "Filter by change detection type.",
        "enum": [
          "exact",
          "semantic"
        ]
      },
      "tags": {
        "type": [
          "array",
          "null"
        ],
        "description": "Comma-separated list of tags to filter by (matches monitors having any of them).",
        "maxItems": 20,
        "items": {
          "type": "string",
          "minLength": 1,
          "maxLength": 50
        }
      },
      "tag": {
        "type": "string",
        "description": "Filter to items that have this tag."
      },
      "limit": {
        "type": "integer",
        "description": "Maximum number of items to return per page (1-100). Defaults to 25.",
        "minimum": 1,
        "maximum": 100
      },
      "cursor": {
        "type": "string",
        "description": "Opaque pagination cursor from a previous response."
      }
    },
    "required": [],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

| Name                                                      | Type                                             | Required | Default | Details                                                   |
| --------------------------------------------------------- | ------------------------------------------------ | -------- | ------- | --------------------------------------------------------- |
| `result.data`                                             | `object`                                         | Yes      | —       | —                                                         |
| `result.data.data`                                        | `array`                                          | Yes      | —       | —                                                         |
| `result.data.data[].mode`                                 | `"web"`                                          | Yes      | —       | Allowed: `web`.                                           |
| `result.data.data[].id`                                   | `string`                                         | Yes      | —       | —                                                         |
| `result.data.data[].name`                                 | `string`                                         | Yes      | —       | —                                                         |
| `result.data.data[].target`                               | `record`                                         | Yes      | —       | —                                                         |
| `result.data.data[].change_detection`                     | `record`                                         | Yes      | —       | —                                                         |
| `result.data.data[].schedule`                             | `record`                                         | Yes      | —       | —                                                         |
| `result.data.data[].webhook`                              | `object \| null`                                 | No       | —       | —                                                         |
| `result.data.data[].webhook.url`                          | `string`                                         | Yes      | —       | Format: `uri`.                                            |
| `result.data.data[].webhook.events`                       | `array`                                          | No       | —       | Minimum items: 1. Maximum items: 2. Items must be unique. |
| `result.data.data[].status`                               | `"active" \| "paused" \| "failed"`               | Yes      | —       | Allowed: `active`, `paused`, `failed`.                    |
| `result.data.data[].last_run_at`                          | `string \| null`                                 | No       | —       | Format: `date-time`.                                      |
| `result.data.data[].last_change_at`                       | `string \| null`                                 | No       | —       | Format: `date-time`.                                      |
| `result.data.data[].next_run_at`                          | `string \| null`                                 | No       | —       | Format: `date-time`.                                      |
| `result.data.data[].last_error`                           | `object \| null`                                 | No       | —       | —                                                         |
| `result.data.data[].last_error.code`                      | `string`                                         | Yes      | —       | —                                                         |
| `result.data.data[].last_error.message`                   | `string`                                         | Yes      | —       | —                                                         |
| `result.data.data[].webhook_failure`                      | `object \| null`                                 | No       | —       | —                                                         |
| `result.data.data[].webhook_failure.consecutive_failures` | `integer`                                        | Yes      | —       | Minimum: 1.                                               |
| `result.data.data[].webhook_failure.last_status`          | `"rejected" \| "failed" \| "skipped_unsafe_url"` | Yes      | —       | Allowed: `rejected`, `failed`, `skipped_unsafe_url`.      |
| `result.data.data[].webhook_failure.last_message`         | `string`                                         | Yes      | —       | —                                                         |
| `result.data.data[].webhook_failure.last_failed_at`       | `string`                                         | Yes      | —       | Format: `date-time`.                                      |
| `result.data.data[].created_at`                           | `string`                                         | Yes      | —       | Format: `date-time`.                                      |
| `result.data.data[].updated_at`                           | `string`                                         | Yes      | —       | Format: `date-time`.                                      |
| `result.data.data[].tags`                                 | `array`                                          | No       | —       | Maximum items: 20. Items must be unique.                  |
| `result.data.data[].baseline`                             | `record`                                         | No       | —       | —                                                         |
| `result.data.has_more`                                    | `boolean`                                        | Yes      | —       | —                                                         |
| `result.data.next_cursor`                                 | `string \| null`                                 | Yes      | —       | —                                                         |
| `result.meta`                                             | `object`                                         | No       | —       | —                                                         |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "data": {
        "type": "object",
        "properties": {
          "data": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "mode": {
                  "type": "string",
                  "enum": [
                    "web"
                  ]
                },
                "id": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "target": {
                  "type": "object",
                  "additionalProperties": true
                },
                "change_detection": {
                  "type": "object",
                  "additionalProperties": true
                },
                "schedule": {
                  "type": "object",
                  "additionalProperties": true
                },
                "webhook": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "properties": {
                    "url": {
                      "type": "string",
                      "format": "uri"
                    },
                    "events": {
                      "type": "array",
                      "minItems": 1,
                      "maxItems": 2,
                      "uniqueItems": true,
                      "items": {
                        "type": "string",
                        "enum": [
                          "change.detected",
                          "run.completed"
                        ]
                      }
                    }
                  },
                  "required": [
                    "url"
                  ],
                  "additionalProperties": false
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "active",
                    "paused",
                    "failed"
                  ]
                },
                "last_run_at": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "date-time"
                },
                "last_change_at": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "date-time"
                },
                "next_run_at": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "format": "date-time"
                },
                "last_error": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "properties": {
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "code",
                    "message"
                  ],
                  "additionalProperties": false
                },
                "webhook_failure": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "properties": {
                    "consecutive_failures": {
                      "type": "integer",
                      "minimum": 1
                    },
                    "last_status": {
                      "type": "string",
                      "enum": [
                        "rejected",
                        "failed",
                        "skipped_unsafe_url"
                      ]
                    },
                    "last_message": {
                      "type": "string"
                    },
                    "last_failed_at": {
                      "type": "string",
                      "format": "date-time"
                    }
                  },
                  "required": [
                    "consecutive_failures",
                    "last_status",
                    "last_message",
                    "last_failed_at"
                  ],
                  "additionalProperties": false
                },
                "created_at": {
                  "type": "string",
                  "format": "date-time"
                },
                "updated_at": {
                  "type": "string",
                  "format": "date-time"
                },
                "tags": {
                  "type": "array",
                  "maxItems": 20,
                  "uniqueItems": true,
                  "items": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 50
                  }
                },
                "baseline": {
                  "type": "object",
                  "additionalProperties": true
                }
              },
              "required": [
                "mode",
                "id",
                "name",
                "target",
                "change_detection",
                "schedule",
                "status",
                "created_at",
                "updated_at"
              ],
              "additionalProperties": false
            }
          },
          "has_more": {
            "type": "boolean"
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "data",
          "has_more",
          "next_cursor"
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Context.dev provider guide](/docs/providers/contextdev/guide)
* [SDK V2 quickstart](/docs/sdk-v2/quickstart)
* [SDK reference](/docs/sdk-v2/sdk-reference)
* [Run tools across a CSV](/docs/sdk-v2/batch-csv)
