---
title: "List Intake Requests for Dashboard"
method: GET
path: "/internal/api/intake-requests"
tags: ["Intake Requests Dashboard"]
---

# List Intake Requests for Dashboard

`GET /internal/api/intake-requests`

## Request

- Base URL: `https://api.signalshq.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.signalshq.io/internal/api/intake-requests`
- Auth: OAuth 2
  - Password
  - Token URL: `/auth/login`

Get a paginated list of all intake requests across all clients for the tenant. Includes client name, progress, status, and dates for dashboard display.

## Query parameters

- `page` integer: Page number (1-based)
- `page_size` integer: Number of items per page (max 100)
- `status_filter` string, nullable: Comma-separated list of status labels to filter by: 'Draft', 'Email Sent', 'In Progress', 'Completed', 'Expired', 'Revoked'
- `client_id` string, uuid, nullable: Optional client ID to filter by specific client
- `sort_by` string: Field to sort by: 'updated_at', 'created_at', 'expires_at'
- `sort_order` string: Sort order: 'asc' or 'desc'
- `search` string, nullable: Search by client name (case-insensitive partial match)

## Response `200`

Successful Response

- DocumentUploadRequestDashboardListResponse: Paginated response for dashboard upload requests list
  - `data` DocumentUploadRequestDashboardResponse[], required: List of upload requests
    - `id` string, uuid, required: Unique identifier for the upload request
    - `request_title` string, required: Title of the upload request
    - `client_id` string, uuid, required: Client ID
    - `client_name` string, required: Client's full name
    - `upload_count` string, required: Upload count in format 'completed/total' (e.g., '4/8')
    - `completed_items` integer, required: Number of items completed
    - `total_items` integer, required: Total number of items requested
    - `last_updated` string, date-time, required: When the request was last updated
    - `due_date` string, date-time, required: When the upload link expires (due date)
    - `status` string, required: UI-friendly status label (same as get_intake_request_status_label): 'Draft', 'Email Sent', 'In Progress', 'Completed', 'Expired', 'Revoked'
    - `created_at` string, date-time, required: When the request was created
    - `created_by` string, required: User who created the request
    - `questionnaire_from_pyr` string, nullable: Questionnaire processing status for previous year return (if applicable for this intake request)
    - `document_checklist_suggestion` string, nullable: Document checklist processing status for previous year return (if applicable for this intake request)
    - `status_code` 'DRAFT' | 'EMAIL_SENT' | 'ACTIVE' | 'COMPLETED' | 'EXPIRED' | 'REVOKED', required: Enum for intake request status
  - `meta` AppSchemasCommonPaginationPaginationMeta, required
    - `page` integer, required: Current page number
    - `page_size` integer, required: Number of items per page
    - `total_count` integer, required: Total number of items
    - `total_pages` integer, required: Total number of pages
    - `total` integer, required: Alias for total_count for backward compatibility

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/signalshq/apis/signals-api.md) - [All operations](https://skmtc.dev/signalshq/apis/signals-api/llms.txt) - [OpenAPI document](https://skmtc.dev/signalshq/apis/signals-api/revisions/2c22af3b5576?raw)
