# Organizations

Source: https://docs.elnora.ai/docs/api/reference/organizations
Last modified: 2026-09-14T10:17:43-06:00

> Organizations endpoints of the Elnora REST API.

Base URL `https://platform.elnora.ai/api/v1`. Authenticate every request with the `X-API-Key` header — see [Authentication](https://docs.elnora.ai/docs/get-started/authentication).

## `GET` /organizations

Get current user's organizations

```bash
curl https://platform.elnora.ai/api/v1/organizations \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Responses**: `200`

## `GET` /organizations/&#123;organizationId&#125;

Get organization by ID

```bash
curl https://platform.elnora.ai/api/v1/organizations/{organizationId} \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Responses**: `200` · `403` · `404`

## `PUT` /organizations/&#123;organizationId&#125;

Update organization

```bash
curl -X PUT https://platform.elnora.ai/api/v1/organizations/{organizationId} \
  -H "X-API-Key: $ELNORA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ ... }'
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Request body**

| Field | Type | Required |
| --- | --- | --- |
| `name` | string | no |
| `pilotStartDate` | date-time | no |
| `pilotEndDate` | date-time | no |

**Responses**: `200` · `403` · `404`

## `GET` /organizations/&#123;organizationId&#125;/billing-status

Get billing status for an organization

```bash
curl https://platform.elnora.ai/api/v1/organizations/{organizationId}/billing-status \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Responses**: `200` · `403` · `404`

## `POST` /organizations/&#123;organizationId&#125;/exports

Request an org-wide data export (JSON + CSV + original file formats + AI memory).

```bash
curl -X POST https://platform.elnora.ai/api/v1/organizations/{organizationId}/exports \
  -H "X-API-Key: $ELNORA_API_KEY" \
  -H "Content-Type: application/json"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Responses**: `202` · `403`

## `GET` /organizations/&#123;organizationId&#125;/exports/&#123;jobId&#125;

Get the status of an export job.

```bash
curl https://platform.elnora.ai/api/v1/organizations/{organizationId}/exports/{jobId} \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |
| `jobId` | path | uuid | yes |

**Responses**: `200` · `404`

## `GET` /organizations/&#123;organizationId&#125;/exports/&#123;jobId&#125;/download

Download a completed export bundle — redirects to a freshly signed, short-lived S3 URL.

```bash
curl https://platform.elnora.ai/api/v1/organizations/{organizationId}/exports/{jobId}/download \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |
| `jobId` | path | uuid | yes |

**Responses**: `302` · `404`

## `PATCH` /organizations/&#123;organizationId&#125;/kb-autotidy

Toggle the org's self-managing-KB autonomous curation (on-upload ingest + weekly sweep).

```bash
curl -X PATCH https://platform.elnora.ai/api/v1/organizations/{organizationId}/kb-autotidy \
  -H "X-API-Key: $ELNORA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ ... }'
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Request body**

| Field | Type | Required |
| --- | --- | --- |
| `enabled` | boolean | no |

**Responses**: `200` · `403` · `404`

## `GET` /organizations/&#123;organizationId&#125;/members

Get organization members

```bash
curl https://platform.elnora.ai/api/v1/organizations/{organizationId}/members \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Responses**: `200` · `403`

## `DELETE` /organizations/&#123;organizationId&#125;/members/&#123;membershipId&#125;

Remove a member from an organization

```bash
curl -X DELETE https://platform.elnora.ai/api/v1/organizations/{organizationId}/members/{membershipId} \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |
| `membershipId` | path | uuid | yes |

**Responses**: `204` · `400` · `403`

## `PUT` /organizations/&#123;organizationId&#125;/members/&#123;membershipId&#125;/role

Update a member's role within an organization

```bash
curl -X PUT https://platform.elnora.ai/api/v1/organizations/{organizationId}/members/{membershipId}/role \
  -H "X-API-Key: $ELNORA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ ... }'
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |
| `membershipId` | path | uuid | yes |

**Request body**

| Field | Type | Required |
| --- | --- | --- |
| `role` | string | no |

**Responses**: `204` · `400` · `403`

## `GET` /organizations/&#123;organizationId&#125;/members/directory

Member-accessible directory for the Share modal typeahead (KB Access V2 / ).

```bash
curl https://platform.elnora.ai/api/v1/organizations/{organizationId}/members/directory \
  -H "X-API-Key: $ELNORA_API_KEY"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |
| `q` | query | string | no |

**Responses**: `200` · `403`

## `PUT` /organizations/&#123;organizationId&#125;/set-default

Set an organization as the user's default (loaded on login).

```bash
curl -X PUT https://platform.elnora.ai/api/v1/organizations/{organizationId}/set-default \
  -H "X-API-Key: $ELNORA_API_KEY" \
  -H "Content-Type: application/json"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Responses**: `204` · `400` · `403`

## `POST` /organizations/&#123;organizationId&#125;/switch

Switch the user's active organization and return a new JWT.

```bash
curl -X POST https://platform.elnora.ai/api/v1/organizations/{organizationId}/switch \
  -H "X-API-Key: $ELNORA_API_KEY" \
  -H "Content-Type: application/json"
```

**Parameters**

| Name | In | Type | Required |
| --- | --- | --- | --- |
| `organizationId` | path | uuid | yes |

**Responses**: `200` · `403`
