Nuvelics documentation
APIAPI reference

Organizations

List the organizations you belong to, and update your current organization, its editorial guidelines and its MCP settings.

GET
/api/tenant/v1/organizations

Authorization

headerx-api-key<token>

A service key (nvs_...) in the x-api-key header. A service key belongs to one organization: an X-Org-Id header is optional and, when sent, must name that organization. This header also accepts any credential the bearer scheme does, and when a request sends both headers, this one is used.

Query Parameters

limit?integer

Maximum items per page (1–100, default 25)

Range1 <= value <= 100
Default25
cursor?string

Opaque cursor from a prior nextCursor

Response Body

Organizations the caller is a member of

application/json
  1. response
items*array<>
pagination*
sort*
filters*
facets?

Value/count breakdown for each field requested via ?facets=. Present only when facets were requested.

included?
Example Request
curl -X GET 'https://api.nuvelics.com/api/tenant/v1/organizations'
Example Response
{  "items": [    {      "id": "string",      "name": "string",      "slug": "string",      "status": "active",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z",      "version": 0,      "editorialGuidelines": "string",      "mcpEnabled": false,      "mcpBlockSelfRegisteredClients": true    }  ],  "pagination": {    "nextCursor": "string"  },  "sort": {    "applied": "string",    "default": "string",    "available": [      "string"    ]  },  "filters": {    "applied": {      "property1": null,      "property2": null    },    "available": [      {        "field": "string",        "kind": "string",        "facetable": true      }    ]  },  "facets": {    "property1": {      "values": [        {          "value": "string",          "count": 0        }      ],      "capped": true    },    "property2": {      "values": [        {          "value": "string",          "count": 0        }      ],      "capped": true    }  },  "included": {    "datasources": {      "property1": {        "id": "string",        "name": "string",        "type": "string",        "vendor": "datafactory",        "iconId": "string"      },      "property2": {        "id": "string",        "name": "string",        "type": "string",        "vendor": "datafactory",        "iconId": "string"      }    },    "credentials": {      "property1": {        "id": "string",        "name": "string",        "schemeType": "string"      },      "property2": {        "id": "string",        "name": "string",        "schemeType": "string"      }    },    "users": {      "property1": {        "id": "string",        "name": "string",        "email": "string"      },      "property2": {        "id": "string",        "name": "string",        "email": "string"      }    },    "articlePitches": {      "property1": [        {          "id": "string",          "title": "string",          "status": "string",          "newsdeskId": "string"        }      ],      "property2": [        {          "id": "string",          "title": "string",          "status": "string",          "newsdeskId": "string"        }      ]    }  }}
GET
/api/tenant/v1/organizations/current

Authorization

headerx-api-key<token>

A service key (nvs_...) in the x-api-key header. A service key belongs to one organization: an X-Org-Id header is optional and, when sent, must name that organization. This header also accepts any credential the bearer scheme does, and when a request sends both headers, this one is used.

Response Body

The organization the calling principal belongs to

application/json
  1. response
id*string

Organization identifier

Match^[0-7][0-9A-HJKMNP-TV-Z]{25}$
name*string

Organization display name

Length1 <= length
slug*string

URL-safe unique identifier (lowercase alphanumeric and hyphens)

Match^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$
status*string

Organization lifecycle status

Value in"active""suspended"
createdAt*string

ISO 8601 creation timestamp

Formatdate-time
updatedAt*string

ISO 8601 last-modified timestamp

Formatdate-time
version*integer

Monotonic row version; used as concurrency token

editorialGuidelines?string

Org-authored editorial guidance injected into pitch and story prompts

Lengthlength <= 2000
mcpEnabled?boolean

Master switch for the org's MCP surface; while false, an authenticated MCP request is rejected before any tool is reachable. Default false: a new integration surface stays opt-in rather than silently on for every existing org.

Defaultfalse
mcpBlockSelfRegisteredClients?boolean

When true, a self-registered OAuth client cannot hold a working token for this org: an already-issued token stops resolving on its next use (no revocation step, no sweep), and consent for such a client is refused. Independent of mcpEnabled -- a static API key is never an OAuth client and is unaffected by this setting in either state. Default false (self-registered clients allowed) when absent.

Example Request
curl -X GET 'https://api.nuvelics.com/api/tenant/v1/organizations/current'
Example Response
{  "id": "string",  "name": "string",  "slug": "string",  "status": "active",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "editorialGuidelines": "string",  "mcpEnabled": false,  "mcpBlockSelfRegisteredClients": true}
PATCH
/api/tenant/v1/organizations/current

Authorization

headerx-api-key<token>

A service key (nvs_...) in the x-api-key header. A service key belongs to one organization: an X-Org-Id header is optional and, when sent, must name that organization. This header also accepts any credential the bearer scheme does, and when a request sends both headers, this one is used.

Request Body

application/json
  1. body
name?string

Organization display name

Length1 <= length
slug?string

URL-safe unique identifier (lowercase alphanumeric and hyphens)

Match^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$

Response Body

Organization updated

application/json
  1. response
id*string

Organization identifier

Match^[0-7][0-9A-HJKMNP-TV-Z]{25}$
name*string

Organization display name

Length1 <= length
slug*string

URL-safe unique identifier (lowercase alphanumeric and hyphens)

Match^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$
status*string

Organization lifecycle status

Value in"active""suspended"
createdAt*string

ISO 8601 creation timestamp

Formatdate-time
updatedAt*string

ISO 8601 last-modified timestamp

Formatdate-time
version*integer

Monotonic row version; used as concurrency token

editorialGuidelines?string

Org-authored editorial guidance injected into pitch and story prompts

Lengthlength <= 2000
mcpEnabled?boolean

Master switch for the org's MCP surface; while false, an authenticated MCP request is rejected before any tool is reachable. Default false: a new integration surface stays opt-in rather than silently on for every existing org.

Defaultfalse
mcpBlockSelfRegisteredClients?boolean

When true, a self-registered OAuth client cannot hold a working token for this org: an already-issued token stops resolving on its next use (no revocation step, no sweep), and consent for such a client is refused. Independent of mcpEnabled -- a static API key is never an OAuth client and is unaffected by this setting in either state. Default false (self-registered clients allowed) when absent.

Example Request
curl -X PATCH 'https://api.nuvelics.com/api/tenant/v1/organizations/current' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "id": "string",  "name": "string",  "slug": "string",  "status": "active",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "editorialGuidelines": "string",  "mcpEnabled": false,  "mcpBlockSelfRegisteredClients": true}
PATCH
/api/tenant/v1/organizations/current/editorial-guidelines

Authorization

headerx-api-key<token>

A service key (nvs_...) in the x-api-key header. A service key belongs to one organization: an X-Org-Id header is optional and, when sent, must name that organization. This header also accepts any credential the bearer scheme does, and when a request sends both headers, this one is used.

Request Body

application/json
  1. body
editorialGuidelines*string
Lengthlength <= 2000

Response Body

Editorial guidelines updated

application/json
  1. response
id*string

Organization identifier

Match^[0-7][0-9A-HJKMNP-TV-Z]{25}$
name*string

Organization display name

Length1 <= length
slug*string

URL-safe unique identifier (lowercase alphanumeric and hyphens)

Match^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$
status*string

Organization lifecycle status

Value in"active""suspended"
createdAt*string

ISO 8601 creation timestamp

Formatdate-time
updatedAt*string

ISO 8601 last-modified timestamp

Formatdate-time
version*integer

Monotonic row version; used as concurrency token

editorialGuidelines?string

Org-authored editorial guidance injected into pitch and story prompts

Lengthlength <= 2000
mcpEnabled?boolean

Master switch for the org's MCP surface; while false, an authenticated MCP request is rejected before any tool is reachable. Default false: a new integration surface stays opt-in rather than silently on for every existing org.

Defaultfalse
mcpBlockSelfRegisteredClients?boolean

When true, a self-registered OAuth client cannot hold a working token for this org: an already-issued token stops resolving on its next use (no revocation step, no sweep), and consent for such a client is refused. Independent of mcpEnabled -- a static API key is never an OAuth client and is unaffected by this setting in either state. Default false (self-registered clients allowed) when absent.

Example Request
curl -X PATCH 'https://api.nuvelics.com/api/tenant/v1/organizations/current/editorial-guidelines' \  -H 'Content-Type: application/json' \  -d '{  "editorialGuidelines": "string"}'
Example Response
{  "id": "string",  "name": "string",  "slug": "string",  "status": "active",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "editorialGuidelines": "string",  "mcpEnabled": false,  "mcpBlockSelfRegisteredClients": true}
PATCH
/api/tenant/v1/organizations/current/mcp-settings

Authorization

headerx-api-key<token>

A service key (nvs_...) in the x-api-key header. A service key belongs to one organization: an X-Org-Id header is optional and, when sent, must name that organization. This header also accepts any credential the bearer scheme does, and when a request sends both headers, this one is used.

Request Body

application/json
  1. body
mcpEnabled?boolean
mcpBlockSelfRegisteredClients?boolean

Response Body

MCP settings updated

application/json
  1. response
id*string

Organization identifier

Match^[0-7][0-9A-HJKMNP-TV-Z]{25}$
name*string

Organization display name

Length1 <= length
slug*string

URL-safe unique identifier (lowercase alphanumeric and hyphens)

Match^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$
status*string

Organization lifecycle status

Value in"active""suspended"
createdAt*string

ISO 8601 creation timestamp

Formatdate-time
updatedAt*string

ISO 8601 last-modified timestamp

Formatdate-time
version*integer

Monotonic row version; used as concurrency token

editorialGuidelines?string

Org-authored editorial guidance injected into pitch and story prompts

Lengthlength <= 2000
mcpEnabled?boolean

Master switch for the org's MCP surface; while false, an authenticated MCP request is rejected before any tool is reachable. Default false: a new integration surface stays opt-in rather than silently on for every existing org.

Defaultfalse
mcpBlockSelfRegisteredClients?boolean

When true, a self-registered OAuth client cannot hold a working token for this org: an already-issued token stops resolving on its next use (no revocation step, no sweep), and consent for such a client is refused. Independent of mcpEnabled -- a static API key is never an OAuth client and is unaffected by this setting in either state. Default false (self-registered clients allowed) when absent.

Example Request
curl -X PATCH 'https://api.nuvelics.com/api/tenant/v1/organizations/current/mcp-settings' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "id": "string",  "name": "string",  "slug": "string",  "status": "active",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "editorialGuidelines": "string",  "mcpEnabled": false,  "mcpBlockSelfRegisteredClients": true}

Report a problem with this page

On this page