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

# KYC verification required

> Recommendation labels are available only to KYC-verified organizations

Parallax recommendation labels (`STRONG BUY`, `BUY`, `HOLD`, `SELL`, `STRONG SELL`) and
sell-side analyst recommendations are available only when your organization has completed
KYC verification. Access is decided per organization, from the organization that owns the
API key making the request.

## Endpoints that answer 403

Endpoints whose whole purpose is recommendation data refuse unverified organizations with
`403` and an `application/problem+json` body. The check runs before credit validation, so a
refused request is **not charged**.

```json theme={null}
{
  "type": "https://docs.chicago.global/problems/kyc-required",
  "title": "KYC verification required",
  "status": 403,
  "detail": "This endpoint requires a KYC-verified organization.",
  "code": "kyc_required",
  "request_id": "7f3c9b2a-..."
}
```

Match on `code`, not on the human-readable `detail`. Retrying will not change the outcome
until your organization is verified.

## Endpoints that omit the label

Every other endpoint keeps working for unverified organizations. The response stays `200`
and simply leaves out the label, while every numeric score (including `total`) remains:

| Endpoint | Field left out |
| - | - |
| [Company Info](https://docs.chicago.global/api-reference/company/info.md), [Peers](https://docs.chicago.global/api-reference/company/peers.md) | `recommendation` |
| [ETF Profile](https://docs.chicago.global/api-reference/etf/profile.md), [ETF Scores](https://docs.chicago.global/api-reference/etf/scores.md), [ETF Holdings](https://docs.chicago.global/api-reference/etf/holdings.md), [ETF Search](https://docs.chicago.global/api-reference/etf/search.md) | `recommendation` |
| [DCF](https://docs.chicago.global/api-reference/valuation/dcf.md) | `compositeRecommendation`, `factorRating` |
| [Portfolio Analytics](https://docs.chicago.global/api-reference/portfolio-tracker/analytics.md), completed portfolio-analysis [jobs](https://docs.chicago.global/api-reference/jobs/status.md) | per-holding `recommendation` |

Treat the field as optional: a missing `recommendation` means your organization does not
have access to it, not that the security is unrated.

Responses that depend on your organization's verification carry
`Cache-Control: private, no-store` and `Vary: Authorization`. Do not cache or share them
across organizations.

## Written analysis and reports

AI-written analysis (peers, analyst consensus, financial analysis, investment thesis, and
portfolio insights) never includes a recommendation label, for any organization.
[Stock](https://docs.chicago.global/api-reference/stock/report.md), [ETF](https://docs.chicago.global/api-reference/etf/report.md),
[portfolio](https://docs.chicago.global/api-reference/portfolio/report.md) and
[CIO](https://docs.chicago.global/api-reference/reports/cio-report.md) reports never include recommendation labels either,
for any organization.

## Getting verified

Contact [parallax@chicago.global](mailto:parallax@chicago.global) to start KYC verification
for your organization. Verification applies to every API key and MCP connection the
organization owns.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.