Nuvelics documentation
APIAPI reference

SOM activity

See what your organization's SOM bus has done: the messages it delivered, the skill runs, each story's progress and a 24-hour summary.

GET
/api/tenant/v1/som-activity/inbox

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

status?string

Restrict the page to rows with this status

Value in"received""skipped_unknown""skipped_echo""error"

Response Body

A page of som_inbox rows, newest-received first

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/som-activity/inbox'
Example Response
{  "items": [    {      "messageId": "string",      "topic": "string",      "messageType": "string",      "status": "received",      "errorDetail": "string",      "receivedAt": "2019-08-24T14:15:22Z",      "storyId": "string"    }  ],  "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/som-activity/skill-runs

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

status?string

Restrict the page to rows with this status

Value in"pending_publish""completed""failed"

Response Body

A page of som_skill_runs rows, newest-started first

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/som-activity/skill-runs'
Example Response
{  "items": [    {      "messageId": "string",      "skillId": "string",      "skillVersion": "string",      "storyId": "string",      "status": "pending_publish",      "attempts": 0,      "lastError": "string",      "startedAt": "2019-08-24T14:15:22Z",      "executedAt": "2019-08-24T14:15:22Z",      "publishedAt": "2019-08-24T14:15:22Z",      "summary": {        "claimsEvaluated": 0,        "warningsRaised": 0,        "assessment": "confirmed",        "model": "string",        "promptVersion": "string"      }    }  ],  "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/som-activity/stories

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

lifecyclePhase?string

Restrict the page to rows with this lifecycle phase

Value in"DEVELOPING""READY_TO_AIR""BREAKING""PUBLISHED"
state?string

Restrict the page to open stories (PLANNED, ACTIVE, ORPHAN) or closed ones (KILLED, SPIKED, ARCHIVED); absent lists both

Value in"open""closed"

Response Body

A page of som_bus_stories rollup rows, most-recently-received first

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/som-activity/stories'
Example Response
{  "items": [    {      "storyId": "string",      "slug": "string",      "headline": "string",      "storyType": "PLANNED",      "version": 0,      "lifecyclePhase": "DEVELOPING",      "priority": "ROUTINE",      "assetsCount": 0,      "newsroomId": "string",      "correlationId": "string",      "storyUpdatedAt": "2019-08-24T14:15:22Z",      "snapshotCount": 0,      "firstReceivedAt": "2019-08-24T14:15:22Z",      "lastReceivedAt": "2019-08-24T14:15:22Z",      "lastMessageId": "string",      "latestRun": {        "skillId": "string",        "status": "pending_publish",        "startedAt": "2019-08-24T14:15:22Z",        "executedAt": "2019-08-24T14:15:22Z",        "publishedAt": "2019-08-24T14:15:22Z",        "summary": {          "claimsEvaluated": 0,          "warningsRaised": 0,          "assessment": "confirmed",          "model": "string",          "promptVersion": "string"        }      },      "runCounts": {        "pending_publish": 0,        "completed": 0,        "failed": 0,        "published": 0      }    }  ],  "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/som-activity/stories/{storyId}

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

storyId*string
Length1 <= length

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

The story's rollup row plus one page of its snapshot cycles, newest snapshot first

application/json
  1. response
story*
cycles*array<>

This page's snapshot cycles, most recently received first. Runs within a cycle are ordered oldest first: the page is a feed of arrivals, while a single cycle is the causal sequence of one arrival.

pagination*
Example Request
curl -X GET 'https://api.nuvelics.com/api/tenant/v1/som-activity/stories/string'
Example Response
{  "story": {    "storyId": "string",    "slug": "string",    "headline": "string",    "storyType": "PLANNED",    "version": 0,    "lifecyclePhase": "DEVELOPING",    "priority": "ROUTINE",    "assetsCount": 0,    "newsroomId": "string",    "correlationId": "string",    "storyUpdatedAt": "2019-08-24T14:15:22Z",    "snapshotCount": 0,    "firstReceivedAt": "2019-08-24T14:15:22Z",    "lastReceivedAt": "2019-08-24T14:15:22Z",    "lastMessageId": "string",    "latestRun": {      "skillId": "string",      "status": "pending_publish",      "startedAt": "2019-08-24T14:15:22Z",      "executedAt": "2019-08-24T14:15:22Z",      "publishedAt": "2019-08-24T14:15:22Z",      "summary": {        "claimsEvaluated": 0,        "warningsRaised": 0,        "assessment": "confirmed",        "model": "string",        "promptVersion": "string"      }    },    "runCounts": {      "pending_publish": 0,      "completed": 0,      "failed": 0,      "published": 0    }  },  "cycles": [    {      "snapshot": {        "messageId": "string",        "topic": "string",        "messageType": "string",        "status": "received",        "errorDetail": "string",        "receivedAt": "2019-08-24T14:15:22Z",        "storyId": "string"      },      "runs": [        {          "messageId": "string",          "skillId": "string",          "skillVersion": "string",          "storyId": "string",          "status": "pending_publish",          "attempts": 0,          "lastError": "string",          "startedAt": "2019-08-24T14:15:22Z",          "executedAt": "2019-08-24T14:15:22Z",          "publishedAt": "2019-08-24T14:15:22Z",          "summary": {            "claimsEvaluated": 0,            "warningsRaised": 0,            "assessment": "confirmed",            "model": "string",            "promptVersion": "string"          },          "instanceId": "string",          "result": {            "claims": [              {                "claim": "string",                "status": "confirmed",                "note": "string",                "sourceIds": [                  "string"                ],                "assertions": [                  {                    "sourceId": "string",                    "value": "string",                    "quote": "string"                  }                ]              }            ],            "factCheck": {              "assessment": "confirmed",              "summary": "string"            },            "sources": [              {                "sourceId": "string",                "origin": "snapshot",                "provider": "string",                "sourceType": "string",                "credibility": "string",                "uri": "string",                "title": "string",                "publishedAt": "2019-08-24"              }            ]          }        }      ]    }  ],  "pagination": {    "nextCursor": "string"  }}
GET
/api/tenant/v1/som-activity/summary

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 org's 24-hour SOM bus activity funnel: inbox, skill runs, and publish

application/json
  1. response
inboxCounts*

Count of som_inbox rows received in the last 24 hours, by status

skillRunCounts*

Count of som_skill_runs rows started in the last 24 hours, by status

publishedCount*integer

Runs whose published_at fell in the last 24 hours

Range0 <= value
oldestPendingPublishAgeSeconds*number

Age in seconds of the oldest run still pending_publish, or null when nothing is pending

Range0 <= value
Example Request
curl -X GET 'https://api.nuvelics.com/api/tenant/v1/som-activity/summary'
Example Response
{  "inboxCounts": {    "received": 0,    "skipped_unknown": 0,    "skipped_echo": 0,    "error": 0  },  "skillRunCounts": {    "pending_publish": 0,    "completed": 0,    "failed": 0  },  "publishedCount": 0,  "oldestPendingPublishAgeSeconds": 0}

Report a problem with this page

On this page