API keys
Create, list and revoke the API keys that scripts and integrations call this API with.
x-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.
limit?integerMaximum items per page (1–100, default 25)
1 <= value <= 10025cursor?stringOpaque cursor from a prior nextCursor
sort?stringSort order: "-field" descending, "field" ascending. Accepted: name, -name, createdAt, -createdAt, updatedAt, -updatedAt (default -updatedAt)
A page of API keys for the organization, most-recently-updated first
application/json- response
items*array<>pagination*sort*filters*facets?Value/count breakdown for each field requested via ?facets=. Present only when facets were requested.
included?curl -X GET 'https://api.nuvelics.com/api/tenant/v1/api-keys'{ "items": [ { "id": "string", "type": "service", "orgId": "string", "userId": "string", "name": "string", "prefix": "string", "last4": "stri", "permissions": [ "datasource:read" ], "createdBy": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "version": 0, "updatedBy": "string", "expiresAt": "2019-08-24T14:15:22Z", "lastUsedAt": "2019-08-24T14:15:22Z", "revokedAt": "2019-08-24T14:15:22Z" } ], "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" } ] } }}x-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.
application/json- body
type*"service"API key type: a service key acts for the organization rather than as a member
"service"name*stringHuman-readable label for the key
1 <= lengthpermissions*array<>Permission set the key will carry; must be a non-empty subset of the creator's permissions
1 <= itemsexpiresAt?stringOptional expiry; no default
date-timeAPI key created; plaintext key shown once
application/json- response
id*stringAPI key identifier (32-char hex key id)
^[0-9a-f]{32}$type*"service"API key type: a service key acts for the organization rather than as a member
"service"orgId*stringOrganization this key is bound to
^[0-7][0-9A-HJKMNP-TV-Z]{25}$userId?stringOwning user, when the key is attributed to one
^[0-7][0-9A-HJKMNP-TV-Z]{25}$name*stringHuman-readable label for the key
1 <= lengthprefix*stringKey type prefix (nvs_)
last4*stringLast 4 characters of the plaintext key
4 <= length <= 4permissions*array<>Permission set the key carries
createdBy*stringUser who created this key
^[0-7][0-9A-HJKMNP-TV-Z]{25}$createdAt*stringISO 8601 creation timestamp
date-timeupdatedAt*stringISO 8601 last-modified timestamp
date-timeversion*integerMonotonic row version; used as concurrency token
updatedBy?stringWho last modified this key
expiresAt?stringISO 8601 expiry timestamp; absent means no expiry
date-timelastUsedAt?stringISO 8601 timestamp of last successful use
date-timerevokedAt?stringISO 8601 revocation timestamp; present means the key is revoked
date-timekey*stringPlaintext key shown once at creation; never stored or returned again
curl -X POST 'https://api.nuvelics.com/api/tenant/v1/api-keys' \ -H 'Content-Type: application/json' \ -d '{ "type": "service", "name": "string", "permissions": [ "datasource:read" ]}'{ "id": "string", "type": "service", "orgId": "string", "userId": "string", "name": "string", "prefix": "string", "last4": "stri", "permissions": [ "datasource:read" ], "createdBy": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z", "version": 0, "updatedBy": "string", "expiresAt": "2019-08-24T14:15:22Z", "lastUsedAt": "2019-08-24T14:15:22Z", "revokedAt": "2019-08-24T14:15:22Z", "key": "string"}x-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.
id*stringAPI key revoked
curl -X DELETE 'https://api.nuvelics.com/api/tenant/v1/api-keys/string'