@naturali/cli 0.124.0 → 0.125.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.mjs +42 -13
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -14,7 +14,7 @@ var __exportAll = (all, no_symbols) => {
|
|
|
14
14
|
};
|
|
15
15
|
//#endregion
|
|
16
16
|
//#region package.json
|
|
17
|
-
var version = "0.
|
|
17
|
+
var version = "0.125.0";
|
|
18
18
|
//#endregion
|
|
19
19
|
//#region ../sdk/src/generated/core/bodySerializer.gen.ts
|
|
20
20
|
const serializeFormDataPair = (data, key, value) => {
|
|
@@ -756,6 +756,9 @@ var Actors = class {
|
|
|
756
756
|
var Channels = class {
|
|
757
757
|
/**
|
|
758
758
|
* List addresses
|
|
759
|
+
*
|
|
760
|
+
* Every identifier this project has seen. An address appears the first time a message arrives from it, so this is what naturali has observed rather than a roster you maintain — most rows carry no `action` of their own and defer to the route table.
|
|
761
|
+
*
|
|
759
762
|
*/
|
|
760
763
|
static listAddresses(options) {
|
|
761
764
|
return (options.client ?? client).get({
|
|
@@ -777,6 +780,9 @@ var Channels = class {
|
|
|
777
780
|
}
|
|
778
781
|
/**
|
|
779
782
|
* Get an address
|
|
783
|
+
*
|
|
784
|
+
* Reads one identifier's own action, if it has one. An identifier naturali has never seen is a `404`; to set an action without knowing whether it exists, use [`PUT /v1/projects/{project_id}/addresses/{identifier}`](/docs/api/addresses/set-address-action), which upserts.
|
|
785
|
+
*
|
|
780
786
|
*/
|
|
781
787
|
static getAddress(options) {
|
|
782
788
|
return (options.client ?? client).get({
|
|
@@ -826,6 +832,9 @@ var Channels = class {
|
|
|
826
832
|
}
|
|
827
833
|
/**
|
|
828
834
|
* List a channel's routes
|
|
835
|
+
*
|
|
836
|
+
* One channel's routes, newest first, `disabled` ones included — only `active` routes take part in resolution. For every route in the project in one read, use [`GET /v1/projects/{project_id}/channel-routes`](/docs/api/channel-routes/list-project-channel-routes).
|
|
837
|
+
*
|
|
829
838
|
*/
|
|
830
839
|
static listChannelRoutes(options) {
|
|
831
840
|
return (options.client ?? client).get({
|
|
@@ -851,6 +860,9 @@ var Channels = class {
|
|
|
851
860
|
}
|
|
852
861
|
/**
|
|
853
862
|
* Delete a route
|
|
863
|
+
*
|
|
864
|
+
* Conversations opened under this route keep its id and stay where they are; the next inbound resolves to the next most specific route, or the channel default, and opens a new conversation there. To stop a route from matching while keeping it readable, `PATCH` it to `status: disabled` instead.
|
|
865
|
+
*
|
|
854
866
|
*/
|
|
855
867
|
static deleteChannelRoute(options) {
|
|
856
868
|
return (options.client ?? client).delete({
|
|
@@ -860,6 +872,9 @@ var Channels = class {
|
|
|
860
872
|
}
|
|
861
873
|
/**
|
|
862
874
|
* Get a route
|
|
875
|
+
*
|
|
876
|
+
* A route id is only meaningful inside its own channel: the same id under another `channel_id` is a `404`. A conversation's `route_id` may instead be one of the two sentinels for the address's own action and the channel default — those name no route and are not readable here.
|
|
877
|
+
*
|
|
863
878
|
*/
|
|
864
879
|
static getChannelRoute(options) {
|
|
865
880
|
return (options.client ?? client).get({
|
|
@@ -948,6 +963,9 @@ var Channels = class {
|
|
|
948
963
|
}
|
|
949
964
|
/**
|
|
950
965
|
* Get a channel
|
|
966
|
+
*
|
|
967
|
+
* The channel's state, its transport modes and its default action. The access token is never returned — `has_credential` is all a read says about it.
|
|
968
|
+
*
|
|
951
969
|
*/
|
|
952
970
|
static getChannel(options) {
|
|
953
971
|
return (options.client ?? client).get({
|
|
@@ -1002,6 +1020,9 @@ var Channels = class {
|
|
|
1002
1020
|
}
|
|
1003
1021
|
/**
|
|
1004
1022
|
* Get a conversation
|
|
1023
|
+
*
|
|
1024
|
+
* Where the conversation points: the address it belongs to, the route (or sentinel) whose action opened it, and the runtime session it maps 1:1 to. The messages are not here — read them with [`GET /v1/projects/{project_id}/channels/{channel_id}/conversations/{conversation_id}/messages`](/docs/api/channels/list-channel-conversation-messages).
|
|
1025
|
+
*
|
|
1005
1026
|
*/
|
|
1006
1027
|
static getChannelConversation(options) {
|
|
1007
1028
|
return (options.client ?? client).get({
|
|
@@ -3234,6 +3255,9 @@ var Models = class {
|
|
|
3234
3255
|
}
|
|
3235
3256
|
/**
|
|
3236
3257
|
* Get a model
|
|
3258
|
+
*
|
|
3259
|
+
* `{model}` is naturali's own name for the model, the same value [`GET /v1/models`](/docs/api/models/list-models) returns — a vendor's invocation string is a `404`. A `deprecated` model still reads here, so a project already generating on one can see what happened to it.
|
|
3260
|
+
*
|
|
3237
3261
|
*/
|
|
3238
3262
|
static getModel(options) {
|
|
3239
3263
|
return (options.client ?? client).get({
|
|
@@ -4375,9 +4399,11 @@ var Users = class {
|
|
|
4375
4399
|
/**
|
|
4376
4400
|
* Get the current account's billing standing
|
|
4377
4401
|
*
|
|
4378
|
-
* The plan the account is on, how long its projects may keep content, and the credit it has left — the figures the platform already enforces against, readable by the account they are enforced against.
|
|
4402
|
+
* The plan the account is on, how long its projects may keep content, how much indexed storage it is holding, and the credit it has left — the figures the platform already enforces against, readable by the account they are enforced against.
|
|
4403
|
+
*
|
|
4404
|
+
* A managed-model generation is refused with `402 insufficient_credit` while `credit_balance_usd` is negative, and a feature or a resource count outside the plan is refused with `403`, as is a retention window wider than `retention_days` or an ingest past `storage_limit_gb`. Every refusal names what is missing; this is where the numbers behind them are read.
|
|
4379
4405
|
*
|
|
4380
|
-
*
|
|
4406
|
+
* Every figure here is a local read, which is what keeps this route cheap enough to poll — unlike `GET /v1/users/me/usage`, which asks the meter once per project.
|
|
4381
4407
|
*
|
|
4382
4408
|
* Answers for the caller's own account only, and always the account the credential resolves to — an API key answers for the user that minted it. The plan gating a *project* is that project's billing owner's, so a member of someone else's project reads their own rung here, not that project's.
|
|
4383
4409
|
*
|
|
@@ -4455,6 +4481,9 @@ var Webhooks = class {
|
|
|
4455
4481
|
}
|
|
4456
4482
|
/**
|
|
4457
4483
|
* Get a webhook
|
|
4484
|
+
*
|
|
4485
|
+
* The endpoint, the events it is subscribed to and whether deliveries are attempted. The signing secret is not returned: it is shown once by [`POST /v1/projects/{project_id}/webhooks`](/docs/api/webhooks/create-webhook) and again by [`POST /v1/projects/{project_id}/webhooks/{webhook_id}:rotate-secret`](/docs/api/webhooks/rotate-webhook-secret).
|
|
4486
|
+
*
|
|
4458
4487
|
*/
|
|
4459
4488
|
static getWebhook(options) {
|
|
4460
4489
|
return (options.client ?? client).get({
|
|
@@ -5588,7 +5617,7 @@ const routes = {
|
|
|
5588
5617
|
"list-addresses": {
|
|
5589
5618
|
serviceClass: "Channels",
|
|
5590
5619
|
operationId: "listAddresses",
|
|
5591
|
-
description: "
|
|
5620
|
+
description: "Every identifier this project has seen. An address appears the first time a message arrives from it, so this is what naturali has observed rather than a roster you maintain — most rows carry no `action` of their own and defer to the route table.",
|
|
5592
5621
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/addresses",
|
|
5593
5622
|
httpMethod: "get",
|
|
5594
5623
|
pathParams: ["project_id"],
|
|
@@ -5620,7 +5649,7 @@ const routes = {
|
|
|
5620
5649
|
"get-address": {
|
|
5621
5650
|
serviceClass: "Channels",
|
|
5622
5651
|
operationId: "getAddress",
|
|
5623
|
-
description: "
|
|
5652
|
+
description: "Reads one identifier's own action, if it has one. An identifier naturali has never seen is a `404`; to set an action without knowing whether it exists, use [`PUT /v1/projects/{project_id}/addresses/{identifier}`](/docs/api/addresses/set-address-action), which upserts.",
|
|
5624
5653
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/addresses",
|
|
5625
5654
|
httpMethod: "get",
|
|
5626
5655
|
pathParams: ["project_id", "identifier"],
|
|
@@ -7966,7 +7995,7 @@ const routes = {
|
|
|
7966
7995
|
"list-channel-routes": {
|
|
7967
7996
|
serviceClass: "Channels",
|
|
7968
7997
|
operationId: "listChannelRoutes",
|
|
7969
|
-
description: "
|
|
7998
|
+
description: "One channel's routes, newest first, `disabled` ones included — only `active` routes take part in resolution. For every route in the project in one read, use [`GET /v1/projects/{project_id}/channel-routes`](/docs/api/channel-routes/list-project-channel-routes).",
|
|
7970
7999
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/channel-routes",
|
|
7971
8000
|
httpMethod: "get",
|
|
7972
8001
|
pathParams: ["project_id", "channel_id"],
|
|
@@ -8100,7 +8129,7 @@ const routes = {
|
|
|
8100
8129
|
"get-channel-route": {
|
|
8101
8130
|
serviceClass: "Channels",
|
|
8102
8131
|
operationId: "getChannelRoute",
|
|
8103
|
-
description: "
|
|
8132
|
+
description: "A route id is only meaningful inside its own channel: the same id under another `channel_id` is a `404`. A conversation's `route_id` may instead be one of the two sentinels for the address's own action and the channel default — those name no route and are not readable here.",
|
|
8104
8133
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/channel-routes",
|
|
8105
8134
|
httpMethod: "get",
|
|
8106
8135
|
pathParams: [
|
|
@@ -8242,7 +8271,7 @@ const routes = {
|
|
|
8242
8271
|
"delete-channel-route": {
|
|
8243
8272
|
serviceClass: "Channels",
|
|
8244
8273
|
operationId: "deleteChannelRoute",
|
|
8245
|
-
description: "
|
|
8274
|
+
description: "Conversations opened under this route keep its id and stay where they are; the next inbound resolves to the next most specific route, or the channel default, and opens a new conversation there. To stop a route from matching while keeping it readable, `PATCH` it to `status: disabled` instead.",
|
|
8246
8275
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/channel-routes",
|
|
8247
8276
|
httpMethod: "delete",
|
|
8248
8277
|
pathParams: [
|
|
@@ -8421,7 +8450,7 @@ const routes = {
|
|
|
8421
8450
|
"get-channel": {
|
|
8422
8451
|
serviceClass: "Channels",
|
|
8423
8452
|
operationId: "getChannel",
|
|
8424
|
-
description: "
|
|
8453
|
+
description: "The channel's state, its transport modes and its default action. The access token is never returned — `has_credential` is all a read says about it.",
|
|
8425
8454
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/channels",
|
|
8426
8455
|
httpMethod: "get",
|
|
8427
8456
|
pathParams: ["project_id", "channel_id"],
|
|
@@ -8621,7 +8650,7 @@ const routes = {
|
|
|
8621
8650
|
"get-channel-conversation": {
|
|
8622
8651
|
serviceClass: "Channels",
|
|
8623
8652
|
operationId: "getChannelConversation",
|
|
8624
|
-
description: "
|
|
8653
|
+
description: "Where the conversation points: the address it belongs to, the route (or sentinel) whose action opened it, and the runtime session it maps 1:1 to. The messages are not here — read them with [`GET /v1/projects/{project_id}/channels/{channel_id}/conversations/{conversation_id}/messages`](/docs/api/channels/list-channel-conversation-messages).",
|
|
8625
8654
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/channels",
|
|
8626
8655
|
httpMethod: "get",
|
|
8627
8656
|
pathParams: [
|
|
@@ -12695,7 +12724,7 @@ const routes = {
|
|
|
12695
12724
|
"get-model": {
|
|
12696
12725
|
serviceClass: "Models",
|
|
12697
12726
|
operationId: "getModel",
|
|
12698
|
-
description: "
|
|
12727
|
+
description: "`{model}` is naturali's own name for the model, the same value [`GET /v1/models`](/docs/api/models/list-models) returns — a vendor's invocation string is a `404`. A `deprecated` model still reads here, so a project already generating on one can see what happened to it.",
|
|
12699
12728
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/models",
|
|
12700
12729
|
httpMethod: "get",
|
|
12701
12730
|
pathParams: ["model"],
|
|
@@ -15899,7 +15928,7 @@ const routes = {
|
|
|
15899
15928
|
"get-current-user-billing": {
|
|
15900
15929
|
serviceClass: "Users",
|
|
15901
15930
|
operationId: "getCurrentUserBilling",
|
|
15902
|
-
description: "The plan the account is on, how long its projects may keep content, and the credit it has left — the figures the platform already enforces against, readable by the account they are enforced against. A managed-model generation is refused with `402 insufficient_credit` while `credit_balance_usd` is negative, and a feature or a resource count outside the plan is refused with `403`, as is a retention window wider than `retention_days`. Every refusal names what is missing; this is where the numbers behind them are read. Answers for the caller's own account only, and always the account the credential resolves to — an API key answers for the user that minted it. The plan gating a *project* is that project's billing owner's, so a member of someone else's project reads their own rung here, not that project's.",
|
|
15931
|
+
description: "The plan the account is on, how long its projects may keep content, how much indexed storage it is holding, and the credit it has left — the figures the platform already enforces against, readable by the account they are enforced against. A managed-model generation is refused with `402 insufficient_credit` while `credit_balance_usd` is negative, and a feature or a resource count outside the plan is refused with `403`, as is a retention window wider than `retention_days` or an ingest past `storage_limit_gb`. Every refusal names what is missing; this is where the numbers behind them are read. Every figure here is a local read, which is what keeps this route cheap enough to poll — unlike `GET /v1/users/me/usage`, which asks the meter once per project. Answers for the caller's own account only, and always the account the credential resolves to — an API key answers for the user that minted it. The plan gating a *project* is that project's billing owner's, so a member of someone else's project reads their own rung here, not that project's.",
|
|
15903
15932
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/users",
|
|
15904
15933
|
httpMethod: "get",
|
|
15905
15934
|
pathParams: [],
|
|
@@ -15997,7 +16026,7 @@ const routes = {
|
|
|
15997
16026
|
"get-webhook": {
|
|
15998
16027
|
serviceClass: "Webhooks",
|
|
15999
16028
|
operationId: "getWebhook",
|
|
16000
|
-
description: "
|
|
16029
|
+
description: "The endpoint, the events it is subscribed to and whether deliveries are attempted. The signing secret is not returned: it is shown once by [`POST /v1/projects/{project_id}/webhooks`](/docs/api/webhooks/create-webhook) and again by [`POST /v1/projects/{project_id}/webhooks/{webhook_id}:rotate-secret`](/docs/api/webhooks/rotate-webhook-secret).",
|
|
16001
16030
|
moduleDocsUrl: "https://docs.naturali.ai/docs/modules/webhooks",
|
|
16002
16031
|
httpMethod: "get",
|
|
16003
16032
|
pathParams: ["project_id", "webhook_id"],
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@naturali/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.125.0",
|
|
4
4
|
"description": "Command-line interface for the naturali.ai API, generated from its OpenAPI specs",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"tsx": "^4.23.1",
|
|
31
31
|
"typescript": "~6.0.3",
|
|
32
32
|
"vitest": "^4.1.10",
|
|
33
|
-
"@naturali/sdk": "0.
|
|
33
|
+
"@naturali/sdk": "0.125.0"
|
|
34
34
|
},
|
|
35
35
|
"scripts": {
|
|
36
36
|
"generate": "tsx scripts/generate.ts",
|