# Who can open this board

> GET /boards/{boardId}/members

Source: https://mockflow.com/developers/reference/members/list-members

**GET** `https://api.mockflow.com/v1/boards/{boardId}/members`  
Scopes: `boards:read`

**curl**

```bash
curl https://api.mockflow.com/v1/boards/brd_3f9e2a/members \
  -H "Authorization: Bearer $MOCKFLOW_API_KEY"
```

**JavaScript**

```javascript
const response = await fetch("https://api.mockflow.com/v1/boards/brd_3f9e2a/members", {
  method: "GET",
  headers: {
    Authorization: `Bearer ${process.env.MOCKFLOW_API_KEY}`
  }
});

const data = await response.json();
```

**Python**

```python
import os, requests

response = requests.get(
    "https://api.mockflow.com/v1/boards/brd_3f9e2a/members",
    headers={"Authorization": f"Bearer {os.environ['MOCKFLOW_API_KEY']}"},
)

response.raise_for_status()
data = response.json()
```

**200**

```json
{
  "data": [
    {
      "id": "string",
      "email": "jane@acme.com",
      "name": "Q4 Launch Planning",
      "role": "owner",
      "inheritedFrom": "string"
    }
  ],
  "publicLink": false
}
```

**429**

```json
{
  "error": {
    "code": "rate_limited",
    "message": "Too many requests.",
    "docsUrl": "https://mockflow.com/developers/concepts/errors#rate_limited"
  },
  "requestId": "req_45d49816999bac40"
}
```

The effective members: the owner, people the space is shared with (`inheritedFrom` is the space), and people the board itself was shared with from the editor. To grant access, share the space.

### Authorization

- `Authorization` (string, required): `Bearer <key>`. The key needs `boards:read` scope. Create and manage keys in the [developer console](/developers/console/); what each scope unlocks is on the [scopes page](/developers/concepts/scopes).

### Path parameters

- `boardId` (string, required)

### Response

- `data` (Member[]): - `id` (string)
  - `email` (string)
  - `name` (string)
  - `role` (enum<string>): The product's roles. Owner is the workspace that holds the board or space and cannot be granted or transferred. Admin can rename and share, editor can edit, reviewer can view, export and add comment items. There is no viewer role and no pending state. One of `owner`, `admin`, `editor` or `reviewer`.
  - `inheritedFrom` (string | null): The space id when access comes from the space.
- `publicLink` (boolean)

### Errors

- 429 `rate_limited`: Too many requests.
