# `api.reports.referred_by` > `POST /reports/referredBy` — ACPortal **Python** ```python api.reports.referred_by(*, data: ReferredByReportRequest | dict) -> list[ReferredByReport] ``` **CLI** ```bash ab reports referred_by [--data ...] ``` POST /reports/referredBy. Args: data: Referred-by report payload with date range filters. Accepts a :class:`ReferredByReportRequest` instance or a dict. Request model: :class:`ReferredByReportRequest` ## Request body — `ReferredByReportRequest` | Field | Type | Required | Description | |---|---|---|---| | `startDate` | `Optional[str]` | no | Range start date (ISO 8601) | | `endDate` | `Optional[str]` | no | Range end date (ISO 8601) | | `pageNo` | `Optional[int]` | no | Page number | | `pageSize` | `Optional[int]` | no | Items per page | | `sortBy` | `Optional[dict]` | no | Sort config {sortByField: int, sortDir: bool} | ## Response Returns a list of `List[ReferredByReport]`. | Field | Type | Required | Description | |---|---|---|---| | `referredBy` | `Optional[str]` | no | Referral source | | `referredName` | `Optional[str]` | no | Referral contact name | | `referredByCategory` | `Optional[str]` | no | Referral category | | `quoteDate` | `Optional[str]` | no | Quote date | | `bookedDate` | `Optional[str]` | no | Booked date | | `revenue` | `Optional[float]` | no | Revenue amount | | `profit` | `Optional[float]` | no | Profit amount | | `customer` | `Optional[str]` | no | Customer name | | `jobDisplayID` | `Optional[int]` | no | Job display ID | | `industry` | `Optional[str]` | no | Industry type | | `customerZipCode` | `Optional[str]` | no | Customer zip code | | `intacctDate` | `Optional[str]` | no | Intacct sync date | | `totalRecords` | `Optional[int]` | no | Total record count | --- [← Back to api.reports](../reports.md)