# Fund Profile

> Returns mutual fund identity and classification.

`GET https://api.bavest.co/v2/funds/profile/{isin}`

Group: Funds. Route id: `v2_funds_profile_isin`. Included in: Pro, Growth.

## Authentication

Send your API key in the `x-api-key` header on every request. No key yet? Sign up at https://dashboard.bavest.co/sign-up (free trial). The examples read the key from the `BAVEST_API_KEY` environment variable.

## Parameters

| Name | In | Type | Required | Description |
|---|---|---|---|---|
| `isin` | path | string | yes | Fund ISIN code (e.g., `DE0009848119`) Example `DE0009848119`. |

## Response

200 Successful response (`application/json`).

| Field | Type | Always present | Description |
|---|---|---|---|
| `data` | object | no |  |
| `data.isin` | string | no | Fund ISIN code. Example: `DE0009848119`. |
| `data.name` | string | no | Fund name. |
| `data.fundCompany` | string | no | Fund management company. |
| `data.description` | string | no | Fund investment objective description. |
| `data.inceptionDate` | string (date) \| null | no | Fund inception date (yyyy-mm-dd) Example: `2003-04-28`. |
| `meta` | ResponseMeta | no | Response envelope metadata. Always present on a 200: `time` is set by `core/response.py` on every successful response. Errors carry the same block, built by the same code, so a client parses one meta shape whether the call succeeded or failed. |
| `meta.time` | integer | no | Server-side processing time in milliseconds. Example: `17`. |
| `meta.parameters` | object | no | Echo of the request parameters the endpoint resolved. |

## Example request

```bash
curl 'https://api.bavest.co/v2/funds/profile/DE0009848119' \
  -H "x-api-key: $BAVEST_API_KEY"
```

## Example response

```json
{
  "data": {
    "isin": "DE0009848119",
    "name": "DWS Top Dividende LD",
    "description": "Der Fonds bietet eine Aktienanlage mit Chance auf laufenden Ertrag. Das Management investiert weltweit in Aktien, vorrangig hochkapitalisierte Werte, die eine höhere Dividendenrendite als der Marktdurchschnitt erwarten lassen. Seit Auflegung liegt die Dividendenrendite des Fondsportfolios bei durchschnittlich 4,0 bis 4,5 Prozent. Das bleibt auch in Zukunft Orientierungsgröße.",
    "fundCompany": "DWS Investment GmbH",
    "inceptionDate": "2003-04-28"
  },
  "meta": {
    "parameters": {
      "isin": "DE0009848119"
    },
    "time": 52
  }
}
```

## Errors

| Status | Meaning |
|---|---|
| 400 | Invalid request parameters. Returned when required query parameters are missing, have invalid types, or violate constraints (e.g., providing both symbol and isin when they are mutually exclusive). |
| 401 | Missing or invalid API key. |
| 404 | Resource not found. |
| 429 | Rate limit exceeded. Retry after the `Retry-After` header interval. |
| 500 | An unexpected error occurred on the server. If the issue persists, contact support with the X-Request-Id header value. |
| 502 | Upstream data provider returned an error or is temporarily unavailable. Retry after a short delay. |
| 503 | Bavest cannot read its data store right now. The security may well have data; retry after the `Retry-After` header interval. |
| 504 | The request timed out waiting for a response from the upstream data provider. This may occur for complex queries or during peak load. |
| default | An unexpected error occurred on the server. If the issue persists, contact support with the X-Request-Id header value. |

- `403` from the gateway: the API key is invalid or switched off.
- `429` with message `Limit Exceeded`: the monthly quota of the key is used up. With `Too Many Requests`: the key is throttled, or this route is not in the key's plan. Wait for `Retry-After` when it is sent.

## Links

- HTML page: https://dashboard.bavest.co/docs/v2_funds_profile_isin
- OpenAPI: https://dashboard.bavest.co/openapi.json (YAML: https://dashboard.bavest.co/openapi.yaml)
- Authentication: https://dashboard.bavest.co/docs/authentication.md
- MCP server for AI agents: https://dashboard.bavest.co/docs/mcp.md
- All routes: https://dashboard.bavest.co/llms.txt
