Nuvelics documentation
APIAPI reference

Output templates

Manage the templates that say how each kind of output is written: its tone, house style and length.

GET
/api/tenant/v1/output-templates

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

type?string

Narrow the list to one template type

Value in"web_article""x_post""instagram_post""tiktok_post""facebook_post""linkedin_post""short_form_video"
isActive?string

Narrow the list to active (true) or retired (false) templates

Value in"true""false"
newsdeskId?string

Narrow the list to templates scoped to this desk, plus every template scoped to no desk

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

Response Body

The org's output templates, narrowed by any filters supplied

application/json
  1. response
items*array<||||||>
Example Request
curl -X GET 'https://api.nuvelics.com/api/tenant/v1/output-templates'
Example Response
{  "items": [    {      "id": "string",      "orgId": "string",      "name": "string",      "newsdeskId": "string",      "isActive": true,      "tone": "string",      "styleNotes": "string",      "createdAt": "2019-08-24T14:15:22Z",      "updatedAt": "2019-08-24T14:15:22Z",      "version": 0,      "type": "web_article",      "minWords": 1,      "maxWords": 1,      "includeByline": true,      "bylineDefault": "string",      "featuredImage": true,      "inlineImages": true    }  ]}
POST
/api/tenant/v1/output-templates

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

Web article template

name*string

Template display name

Length1 <= length
newsdeskId*string

Desk this template is scoped to; null means it is offered on every desk

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

Free-text description of the intended voice, e.g. 'measured, wire-service neutral'

Length1 <= length <= 2000
styleNotes?string

Free-text house style notes, e.g. 'AP style, metric units'

Lengthlength <= 2000
type*"web_article"
Value in"web_article"
minWords*integer

Minimum article length in words

Range1 <= value
maxWords*integer

Maximum article length in words; must be >= minWords

Range1 <= value
includeByline*boolean

Whether generated articles carry a byline

bylineDefault?string

Default byline text; required when includeByline is true

featuredImage?boolean

Whether generation picks a featured image for the article

Defaulttrue
inlineImages?boolean

Whether generation may place images in the article body

Defaulttrue

Response Body

Output template created

application/json
  1. response
id*string

Output template identifier

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

Owning organization identifier

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

Template display name

Length1 <= length
newsdeskId*string

Desk this template is scoped to; null means it is offered on every desk

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

Whether the template is offered on the add-an-output picker

tone*string

Free-text description of the intended voice, e.g. 'measured, wire-service neutral'

Length1 <= length <= 2000
styleNotes?string

Free-text house style notes, e.g. 'AP style, metric units'

Lengthlength <= 2000
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

type*"web_article"
Value in"web_article"
minWords*integer

Minimum article length in words

Range1 <= value
maxWords*integer

Maximum article length in words; must be >= minWords

Range1 <= value
includeByline*boolean

Whether generated articles carry a byline

bylineDefault?string

Default byline text; required when includeByline is true

featuredImage?boolean

Whether generation picks a featured image for the article

Defaulttrue
inlineImages?boolean

Whether generation may place images in the article body

Defaulttrue
Example Request
curl -X POST 'https://api.nuvelics.com/api/tenant/v1/output-templates' \  -H 'Content-Type: application/json' \  -d '{  "name": "string",  "newsdeskId": "string",  "tone": "string",  "type": "web_article",  "minWords": 1,  "maxWords": 1,  "includeByline": true}'
Example Response
{  "id": "string",  "orgId": "string",  "name": "string",  "newsdeskId": "string",  "isActive": true,  "tone": "string",  "styleNotes": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "type": "web_article",  "minWords": 1,  "maxWords": 1,  "includeByline": true,  "bylineDefault": "string",  "featuredImage": true,  "inlineImages": true}

Get an output template

GET
/api/tenant/v1/output-templates/{id}

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.

Path Parameters

id*string

Output template identifier

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

Response Body

The output template.

application/json
  1. response
id*string

Output template identifier

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

Owning organization identifier

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

Template display name

Length1 <= length
newsdeskId*string

Desk this template is scoped to; null means it is offered on every desk

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

Whether the template is offered on the add-an-output picker

tone*string

Free-text description of the intended voice, e.g. 'measured, wire-service neutral'

Length1 <= length <= 2000
styleNotes?string

Free-text house style notes, e.g. 'AP style, metric units'

Lengthlength <= 2000
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

type*"web_article"
Value in"web_article"
minWords*integer

Minimum article length in words

Range1 <= value
maxWords*integer

Maximum article length in words; must be >= minWords

Range1 <= value
includeByline*boolean

Whether generated articles carry a byline

bylineDefault?string

Default byline text; required when includeByline is true

featuredImage?boolean

Whether generation picks a featured image for the article

Defaulttrue
inlineImages?boolean

Whether generation may place images in the article body

Defaulttrue
Example Request
curl -X GET 'https://api.nuvelics.com/api/tenant/v1/output-templates/string'
Example Response
{  "id": "string",  "orgId": "string",  "name": "string",  "newsdeskId": "string",  "isActive": true,  "tone": "string",  "styleNotes": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "type": "web_article",  "minWords": 1,  "maxWords": 1,  "includeByline": true,  "bylineDefault": "string",  "featuredImage": true,  "inlineImages": true}
PATCH
/api/tenant/v1/output-templates/{id}

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.

Path Parameters

id*string

Output template identifier

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

Request Body

application/json
  1. body
name?string
Length1 <= length
newsdeskId?string

Newsdesk identifier

Match^[0-7][0-9A-HJKMNP-TV-Z]{25}$
isActive?boolean
tone?string
Length1 <= length <= 2000
styleNotes?string
Lengthlength <= 2000
minWords?integer
Range1 <= value
maxWords?integer
Range1 <= value
includeByline?boolean
bylineDefault?string
featuredImage?boolean
inlineImages?boolean
maxCharacters?integer
Range1 <= value
maxHashtags?integer
Range0 <= value
formats?array<>
Items1 <= items
minSeconds?integer
Range5 <= value
maxSeconds?integer
Rangevalue <= 20
captionStyle?"cards"
Value in"cards"
brandKitId?string

Brand kit identifier

Match^[0-7][0-9A-HJKMNP-TV-Z]{25}$
media?

The cards and videos a post carries; null means a text-only post

Response Body

Output template updated

application/json
  1. response
id*string

Output template identifier

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

Owning organization identifier

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

Template display name

Length1 <= length
newsdeskId*string

Desk this template is scoped to; null means it is offered on every desk

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

Whether the template is offered on the add-an-output picker

tone*string

Free-text description of the intended voice, e.g. 'measured, wire-service neutral'

Length1 <= length <= 2000
styleNotes?string

Free-text house style notes, e.g. 'AP style, metric units'

Lengthlength <= 2000
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

type*"web_article"
Value in"web_article"
minWords*integer

Minimum article length in words

Range1 <= value
maxWords*integer

Maximum article length in words; must be >= minWords

Range1 <= value
includeByline*boolean

Whether generated articles carry a byline

bylineDefault?string

Default byline text; required when includeByline is true

featuredImage?boolean

Whether generation picks a featured image for the article

Defaulttrue
inlineImages?boolean

Whether generation may place images in the article body

Defaulttrue
Example Request
curl -X PATCH 'https://api.nuvelics.com/api/tenant/v1/output-templates/string' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "id": "string",  "orgId": "string",  "name": "string",  "newsdeskId": "string",  "isActive": true,  "tone": "string",  "styleNotes": "string",  "createdAt": "2019-08-24T14:15:22Z",  "updatedAt": "2019-08-24T14:15:22Z",  "version": 0,  "type": "web_article",  "minWords": 1,  "maxWords": 1,  "includeByline": true,  "bylineDefault": "string",  "featuredImage": true,  "inlineImages": true}
DELETE
/api/tenant/v1/output-templates/{id}

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.

Path Parameters

id*string

Output template identifier

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

Response Body

Output template deleted

Example Request
curl -X DELETE 'https://api.nuvelics.com/api/tenant/v1/output-templates/string'
Example Response
Empty

Report a problem with this page

On this page