Organizations
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.
GET /organizations
Get current user's organizations
curl https://platform.elnora.ai/api/v1/organizations \
-H "X-API-Key: $ELNORA_API_KEY"Responses: 200
GET /organizations/{organizationId}
Get organization by ID
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/{organizationId}
Update organization
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 |
Responses: 200 · 403 · 404
GET /organizations/{organizationId}/billing-status
Get billing status for an organization
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/{organizationId}/exports
Request an org-wide data export (JSON + CSV + original file formats + AI memory).
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/{organizationId}/exports/{jobId}
Get the status of an export job.
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/{organizationId}/exports/{jobId}/download
Download a completed export bundle — redirects to a freshly signed, short-lived S3 URL.
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/{organizationId}/kb-autotidy
Toggle the org's self-managing-KB autonomous curation (on-upload ingest + weekly sweep).
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/{organizationId}/members
Get organization members
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/{organizationId}/members/{membershipId}
Remove a member from an organization
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/{organizationId}/members/{membershipId}/role
Update a member's role within an organization
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/{organizationId}/members/directory
Member-accessible directory for the Share modal typeahead (KB Access V2 / ).
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/{organizationId}/set-default
Set an organization as the user's default (loaded on login).
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/{organizationId}/switch
Switch the user's active organization and return a new JWT.
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