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

# Custom Signals

> Read Custom Signals configured for monitored accounts.

Custom Signals are the plain-language questions Plyne checks against your monitored accounts.

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url 'https://api.plyne.ai/v1/monitor/custom-signals' \
    --header 'Authorization: Bearer plyne_...' \
    --header 'Content-Type: application/json' \
    --data '{
      "statuses": ["active"],
      "cursor": { "limit": 50 }
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "data": [
      {
        "id": "d8signaldefinitionid",
        "name": "Tech stack migration",
        "question": "Did {company} recently adopt ServiceTitan?",
        "status": "active"
      }
    ],
    "cursor": {
      "next": "",
      "has_more": false
    }
  }
  ```
</ResponseExample>

```http theme={null}
POST /v1/monitor/custom-signals
```

<div className="plyne-api-meta">
  <section className="plyne-api-section">
    <h2>Body</h2>

    <div className="plyne-param">
      <div className="plyne-param-title">
        <span className="plyne-param-name">statuses</span>
        <span className="plyne-pill">string\[]</span>
      </div>

      <p>Filter by Custom Signal status.</p>
      <p className="plyne-param-example">Example: <code>\["active"]</code></p>
    </div>

    <div className="plyne-param">
      <div className="plyne-param-title">
        <span className="plyne-param-name">cursor.limit</span>
        <span className="plyne-pill">integer</span>
      </div>

      <p>Number of Custom Signals to return. Maximum value is <code>100</code>.</p>
    </div>

    <div className="plyne-param">
      <div className="plyne-param-title">
        <span className="plyne-param-name">cursor.after</span>
        <span className="plyne-pill">string</span>
      </div>

      <p>Opaque cursor returned as <code>cursor.next</code> from the previous response.</p>
    </div>
  </section>
</div>
