---
title: "Search or list feature requests"
method: POST
path: "/feature-requests/search"
tags: ["feature-requests"]
---

# Search or list feature requests

`POST /feature-requests/search`

Returns feature requests matching the given criteria. Supports semantic search, status filtering, and pagination.

**Rate limit:** 20 requests per minute

## Request body

- SearchFeatureRequestsRequest
  - `account_ids` string[] — Filter by one or more account IDs. Returns only feature requests with evidence linked to any of the given accounts.
  - `limit` integer — The maximum number of feature requests to return. Defaults to 100, max 1000.
  - `query` string — A search query string for semantic and keyword matching. If omitted, all feature requests are returned (subject to other filters and limit).
  - `request_statuses` string[] — Filter by one or more request statuses. Each value can be a built-in status (new, in_progress, closed, archived) or a custom status slug.

## Response `200`

- SearchFeatureRequestsResponseBody
  - `data` FeatureRequestSearchResult[]
    - `account_ids` string[] — IDs of customer accounts that have requested this feature, resolved via the evidence chain.
    - `created_at` string — The time the feature request was created (RFC3339).
    - `custom_fields` object — Custom field values associated with the feature request, keyed by custom field slug.
    - `description` string — The description of the feature request.
    - `evidence_count` integer — The number of evidence items (excluding irrelevant) linked to this feature request.
    - `external_issues` ExternalIssue[] — The external product issues associated with the feature request, if any.
      - `external_id` string — The external ID of the external issue. Jira: ID of the issue (autoincrementing number from 10000). GitHub: Owner/Repo/IssueID. Linear: ID of the issue (UUID). Asana: ID of the task (Long number).
      - `link` string — Link to the product issue.
      - `source` string — The source of the external issue.
    - `id` string — The ID of the feature request.
    - `portal_visible_to_account_ids` string[] — Account IDs that can see this feature request in the customer portal. Empty means hidden from all accounts. Only takes effect when the Feature Requests tab is enabled in portal settings.
    - `request_status` string — The status of the feature request. Can be a built-in status (new, in_progress, closed, archived) or a custom status slug.
    - `title` string — The title of the feature request.
    - `updated_at` string — The time the feature request was last updated (RFC3339).
  - `request_id` string

## Other responses

- `400` — The request was invalid or could not be completed.
- `404`
- `500` — An unexpected internal error occurred.

---

[API](https://skmtc.net/usepylon/apis/pylon-api.md) · [All operations](https://skmtc.net/usepylon/apis/pylon-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/usepylon/pylon-api/versions/484a11d5ddb2/schema)
