> ## Documentation Index
> Fetch the complete documentation index at: https://pamm-api.codench.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Investor endpoints

> Contracts for listing, provisioning, registering, and retrieving PAMM Investors.

## List Investors

`GET /api/v1/investor/directory`

| Query parameter | Type    | Required | Description                             |
| --------------- | ------- | -------- | --------------------------------------- |
| `engine`        | enum    | Yes      | Send `PAMM`.                            |
| `limit`         | integer | No       | From 1 to 100; recommended value is 50. |
| `cursor`        | string  | No       | Opaque cursor from the previous page.   |

```bash theme={null}
curl "https://pamm-api.example.com/api/v1/investor/directory?engine=PAMM&limit=50" \
  -H "Authorization: Bearer YOUR_CRM_API_KEY"
```

```json theme={null}
{
  "items": [
    {
      "engine": "PAMM",
      "id": 410,
      "mt5_login": "146600",
      "name": "Investor Demo",
      "created_at": "2026-07-21T13:10:00"
    }
  ],
  "next_cursor": null,
  "has_more": false
}
```

## Register an existing Investor

`POST /api/v1/investor/add`

| Body field  | Type   | Required | Description                                        |
| ----------- | ------ | -------- | -------------------------------------------------- |
| `mt5_login` | string | Yes      | Positive numeric login of an existing MT5 account. |
| `name`      | string | Yes      | Investor name or alias.                            |

```json theme={null}
{
  "mt5_login": "146600",
  "name": "Investor Demo"
}
```

```json theme={null}
{
  "engine": "PAMM",
  "id": 410,
  "mt5_login": "146600",
  "name": "Investor Demo",
  "created_at": "2026-07-21T13:10:00"
}
```

A duplicate login returns `409`. Registration does not credit funds or create a subscription.

## Create a new Investor

`POST /api/v1/investor/create`

| Body field       | Type   | Required | Description                             |
| ---------------- | ------ | -------- | --------------------------------------- |
| `first_name`     | string | Yes      | MT5 holder first name.                  |
| `last_name`      | string | Yes      | MT5 holder last name.                   |
| `name`           | string | Yes      | Investor alias.                         |
| `username`       | email  | Yes      | Email associated with MT5 provisioning. |
| `platform_group` | string | Yes      | Broker-agreed Investor MT5 group.       |
| `leverage`       | string | No       | Defaults to `100`.                      |

```json theme={null}
{
  "first_name": "Carlos",
  "last_name": "Perez",
  "name": "Investor Demo",
  "username": "carlos.perez@example.com",
  "platform_group": "<MT5_INVESTOR_GROUP>",
  "leverage": "100"
}
```

```json theme={null}
{
  "id": 410,
  "mt5_login": "146600",
  "name": "Investor Demo",
  "created_at": "2026-07-21T13:10:00",
  "password": "<MT5_MAIN_PASSWORD>",
  "investor_password": "<MT5_INVESTOR_PASSWORD>"
}
```

The new account has no balance and no Master assignment.

## Retrieve sensitive Investor details

`GET /api/v1/info/investor/{investor_login}`

| Path parameter   | Type   | Required | Description         |
| ---------------- | ------ | -------- | ------------------- |
| `investor_login` | string | Yes      | Investor MT5 login. |

```json theme={null}
{
  "id": 410,
  "mt5_login": "146600",
  "name": "Investor Demo",
  "mt5_password": "<MT5_MAIN_PASSWORD>",
  "mt5_investor_password": "<MT5_INVESTOR_PASSWORD>",
  "created_at": "2026-07-21T13:10:00"
}
```

<Warning>
  Call this route only from an authorized administrative backend. Treat both passwords as secrets and never log the complete response.
</Warning>

<CardGroup cols={2}>
  <Card title="Previous: Master endpoints" icon="arrow-left" href="/reference/masters">
    Return to Master provisioning contracts.
  </Card>

  <Card title="Next: Subscription endpoints" icon="arrow-right" href="/reference/subscriptions">
    Open assignment and relationship queries.
  </Card>
</CardGroup>
