@funnelchat-hq/sandbox 0.5.2 → 0.5.3
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/README.md +5 -5
- package/dist/{chunk-4ELMG644.js → chunk-ZHTK33SS.js} +261 -33
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/spec/procedencia.json +6 -6
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
A local server that imitates the Funnelchat public API and sends signed webhooks, with no real effects: nothing goes out to WhatsApp, nothing is charged, everything stays in memory. Build and test your integration without an account.
|
|
4
4
|
|
|
5
|
-
It comes from the spec the developer portal publishes, v0.6.
|
|
5
|
+
It comes from the spec the developer portal publishes, v0.6.18: the same operations and events (see [Pending of the spec](#pending-of-the-spec)). What it simulates with state follows production as it was checked on 06-11.
|
|
6
6
|
|
|
7
7
|
## Try it in 3 minutes, without an account
|
|
8
8
|
|
|
@@ -129,7 +129,7 @@ npx funnelchat-sandbox
|
|
|
129
129
|
```
|
|
130
130
|
|
|
131
131
|
```
|
|
132
|
-
funnelchat-sandbox 0.5.
|
|
132
|
+
funnelchat-sandbox 0.5.3 at http://127.0.0.1:4010
|
|
133
133
|
API: http://127.0.0.1:4010/api/v1/... (Authorization: Bearer 1|fc_live_sandbox, or any well-formed key)
|
|
134
134
|
panel: http://127.0.0.1:4010/_sandbox
|
|
135
135
|
example numbers: 3 (official, with the 24-hour window) and 4 (QR, no window); contact 2001; template 45
|
|
@@ -758,7 +758,7 @@ And at `http://localhost:4010/_sandbox` you see each request and each delivery w
|
|
|
758
758
|
|
|
759
759
|
## Pending of the spec
|
|
760
760
|
|
|
761
|
-
The spec (`spec/funnelchat.json`) is the one the portal publishes, v0.6.
|
|
761
|
+
The spec (`spec/funnelchat.json`) is the one the portal publishes, v0.6.18 (https://developers-portal.funnelchat.app/specs/funnelchat.json): only the operations and events the portal shows. **The sandbox offers only that:** a layer corrects shapes where the spec says otherwise than production answers, but never adds an operation or an event (the generator refuses it and says so). The corrections are in two layers, which the next regeneration drops on its own once the spec carries them:
|
|
762
762
|
|
|
763
763
|
- `spec/pending.json`: the pending layer of the Node SDK (`funnelchat-node` @ `bde8679`), with the corrections of 13-11 made here ahead of the SDK: `answers[].label` of `whatsapp_form.completed` is always a string, `message.type` of `message.received` accepts types the spec does not list yet, and its sources say what portal v0.6.14 shows (its note in `spec/procedencia.json` lists them). Guarded by JSON Pointer conditions: the send answers, `devices/{device}/qr`, the template list, `PUT webhooks/{id}`, and the shapes of the number, group, billing, form and message events. Its entry for `GET groups/actions/{action}` no longer applies: the spec of v0.6.16 carries that answer, and `npm run generate` lists the entry so that the layer drops it.
|
|
764
764
|
- `spec/pending-sandbox.json`: what the sandbox corrects on top of it, with its sources inside.
|
|
@@ -780,7 +780,7 @@ Everything generated comes from a single script:
|
|
|
780
780
|
# With a new spec of the portal: always the one it publishes, only the operations and events the portal shows (the
|
|
781
781
|
# tools are generated only from what the portal publishes). Download it, and say with --origin which version of the
|
|
782
782
|
# portal it is, for example {"url": "https://developers-portal.funnelchat.app/specs/funnelchat.json",
|
|
783
|
-
# "portal_version": "v0.6.
|
|
783
|
+
# "portal_version": "v0.6.18"}; it is the only place the version is written, and spec/procedencia.json keeps it:
|
|
784
784
|
curl -sO https://developers-portal.funnelchat.app/specs/funnelchat.json
|
|
785
785
|
npm run generate -- --spec funnelchat.json --origin <that JSON>
|
|
786
786
|
|
|
@@ -805,7 +805,7 @@ What it does:
|
|
|
805
805
|
|
|
806
806
|
**A handler whose operation is not in the spec is not reached:** the route answers `404 route_not_found`, like a route the API does not have. After a regeneration, `GET /_sandbox/operations` says what has state and what answers [shape only](#with-state-or-shape-only).
|
|
807
807
|
|
|
808
|
-
**The current spec** is the one the portal publishes, v0.6.
|
|
808
|
+
**The current spec** is the one the portal publishes, v0.6.18, at https://developers-portal.funnelchat.app/specs/funnelchat.json (sha256 `19e91748ddfe19eef74886264ee984d360417596745e5a900a02a7a831b570a0`), with the common error format of the API: 209 paths, 253 operations and 57 events (56 types: the 55 of the `events` enum and `webhook.test`, which two areas document), in 30 groups: 1 of «Primer uso», 9 of «Funciones de WhatsApp» and 20 of «Funciones de Funnelchat». The detail is in `spec/procedencia.json`.
|
|
809
809
|
|
|
810
810
|
## Development
|
|
811
811
|
|
|
@@ -635,7 +635,7 @@ var catalog_default = {
|
|
|
635
635
|
type: "mac.usage_80",
|
|
636
636
|
area: "accounts",
|
|
637
637
|
status: "active",
|
|
638
|
-
description: "La cuenta alcanz\xF3 el 80% de sus contactos activos mensuales del ciclo.",
|
|
638
|
+
description: "La cuenta alcanz\xF3 el 80% de sus contactos activos mensuales del ciclo. `workspace_id` es el workspace al que se rutea el evento, como en todos los eventos: el workspace con facturaci\xF3n propia cuyo pool alcanz\xF3 el umbral, o el workspace por defecto cuando el pool es el de la cuenta.",
|
|
639
639
|
subscribable: true,
|
|
640
640
|
example: {
|
|
641
641
|
id: "evt_0f8e4b526c1d4c7a9a3e2b5d",
|
|
@@ -655,7 +655,7 @@ var catalog_default = {
|
|
|
655
655
|
type: "mac.usage_100",
|
|
656
656
|
area: "accounts",
|
|
657
657
|
status: "active",
|
|
658
|
-
description: "La cuenta agot\xF3 sus contactos activos mensuales del ciclo; se abre una gracia de 24 horas cuyo vencimiento viaja en `grace_expires_at`.",
|
|
658
|
+
description: "La cuenta agot\xF3 sus contactos activos mensuales del ciclo; se abre una gracia de 24 horas cuyo vencimiento viaja en `grace_expires_at`. `workspace_id` es el workspace al que se rutea el evento, como en todos los eventos: el workspace con facturaci\xF3n propia cuyo pool se agot\xF3, o el workspace por defecto cuando el pool es el de la cuenta.",
|
|
659
659
|
subscribable: true,
|
|
660
660
|
example: {
|
|
661
661
|
id: "evt_0f8e4b526c1d4c7a9a3e2b5d",
|
|
@@ -1148,7 +1148,7 @@ var catalog_default = {
|
|
|
1148
1148
|
type: "group.created",
|
|
1149
1149
|
area: "communities",
|
|
1150
1150
|
status: "active",
|
|
1151
|
-
description: "Se cre\xF3 o se import\xF3 un grupo dentro de una campa\xF1a de la cuenta.",
|
|
1151
|
+
description: "Se cre\xF3 o se import\xF3 un grupo dentro de una campa\xF1a de la cuenta; `source` vale `imported` si el grupo ya exist\xEDa en WhatsApp y entr\xF3 por una importaci\xF3n o una sincronizaci\xF3n, y `created` en cualquier otro caso.",
|
|
1152
1152
|
subscribable: true,
|
|
1153
1153
|
example: {
|
|
1154
1154
|
id: "evt_00000000000000000000000000000001",
|
|
@@ -1162,7 +1162,7 @@ var catalog_default = {
|
|
|
1162
1162
|
type: "group"
|
|
1163
1163
|
},
|
|
1164
1164
|
campaign: {
|
|
1165
|
-
uuid: "
|
|
1165
|
+
uuid: "xK9mQz",
|
|
1166
1166
|
name: "Campa\xF1a de ejemplo"
|
|
1167
1167
|
},
|
|
1168
1168
|
source: "created",
|
|
@@ -1188,7 +1188,7 @@ var catalog_default = {
|
|
|
1188
1188
|
type: "group"
|
|
1189
1189
|
},
|
|
1190
1190
|
campaign: {
|
|
1191
|
-
uuid: "
|
|
1191
|
+
uuid: "xK9mQz",
|
|
1192
1192
|
name: "Campa\xF1a de ejemplo"
|
|
1193
1193
|
},
|
|
1194
1194
|
reason: "http_404",
|
|
@@ -1215,7 +1215,7 @@ var catalog_default = {
|
|
|
1215
1215
|
type: "group"
|
|
1216
1216
|
},
|
|
1217
1217
|
campaign: {
|
|
1218
|
-
uuid: "
|
|
1218
|
+
uuid: "xK9mQz",
|
|
1219
1219
|
name: "Campa\xF1a de ejemplo"
|
|
1220
1220
|
},
|
|
1221
1221
|
invite_link: "https://chat.whatsapp.com/EjemploNuevo0000000000001",
|
|
@@ -1323,7 +1323,7 @@ var catalog_default = {
|
|
|
1323
1323
|
uid: "120363000000000001@g.us"
|
|
1324
1324
|
},
|
|
1325
1325
|
participant: {
|
|
1326
|
-
identity: "
|
|
1326
|
+
identity: "5491100000000",
|
|
1327
1327
|
identity_type: "phone",
|
|
1328
1328
|
name: "Ana P\xE9rez"
|
|
1329
1329
|
},
|
|
@@ -1360,7 +1360,7 @@ var catalog_default = {
|
|
|
1360
1360
|
uuid: "00000000-0000-4000-8000-000000000004"
|
|
1361
1361
|
},
|
|
1362
1362
|
participant: {
|
|
1363
|
-
identity: "
|
|
1363
|
+
identity: "5491100000000",
|
|
1364
1364
|
identity_type: "phone",
|
|
1365
1365
|
name: null
|
|
1366
1366
|
},
|
|
@@ -1384,7 +1384,7 @@ var catalog_default = {
|
|
|
1384
1384
|
occurred_at: "2026-10-01T12:00:00Z",
|
|
1385
1385
|
data: {
|
|
1386
1386
|
campaign: {
|
|
1387
|
-
uuid: "
|
|
1387
|
+
uuid: "xK9mQz"
|
|
1388
1388
|
},
|
|
1389
1389
|
pipeline: {
|
|
1390
1390
|
uuid: "00000000-0000-4000-8000-00000000000b",
|
|
@@ -1420,7 +1420,7 @@ var catalog_default = {
|
|
|
1420
1420
|
name: "Grupo de ejemplo"
|
|
1421
1421
|
},
|
|
1422
1422
|
campaign: {
|
|
1423
|
-
uuid: "
|
|
1423
|
+
uuid: "xK9mQz"
|
|
1424
1424
|
},
|
|
1425
1425
|
reason: "admin_access_lost",
|
|
1426
1426
|
workspace_id: 37
|
|
@@ -1444,7 +1444,7 @@ var catalog_default = {
|
|
|
1444
1444
|
name: "Grupo de ejemplo"
|
|
1445
1445
|
},
|
|
1446
1446
|
campaign: {
|
|
1447
|
-
uuid: "
|
|
1447
|
+
uuid: "xK9mQz"
|
|
1448
1448
|
},
|
|
1449
1449
|
reason: "access_restored",
|
|
1450
1450
|
workspace_id: 37
|
|
@@ -1464,7 +1464,7 @@ var catalog_default = {
|
|
|
1464
1464
|
occurred_at: "2026-10-01T12:00:00Z",
|
|
1465
1465
|
data: {
|
|
1466
1466
|
campaign: {
|
|
1467
|
-
uuid: "
|
|
1467
|
+
uuid: "xK9mQz",
|
|
1468
1468
|
name: "Campa\xF1a de ejemplo"
|
|
1469
1469
|
},
|
|
1470
1470
|
from: "active",
|
|
@@ -13954,6 +13954,16 @@ var openapi_default = {
|
|
|
13954
13954
|
tags: [
|
|
13955
13955
|
"Puntaje"
|
|
13956
13956
|
],
|
|
13957
|
+
requestBody: {
|
|
13958
|
+
required: true,
|
|
13959
|
+
content: {
|
|
13960
|
+
"application/json": {
|
|
13961
|
+
schema: {
|
|
13962
|
+
$ref: "#/components/schemas/UpdateLeadScoreSettingsRequest"
|
|
13963
|
+
}
|
|
13964
|
+
}
|
|
13965
|
+
}
|
|
13966
|
+
},
|
|
13957
13967
|
responses: {
|
|
13958
13968
|
"200": {
|
|
13959
13969
|
description: "OK",
|
|
@@ -40620,7 +40630,7 @@ var openapi_default = {
|
|
|
40620
40630
|
post: {
|
|
40621
40631
|
operationId: "webhook.group_created",
|
|
40622
40632
|
summary: "group.created",
|
|
40623
|
-
description: "Se cre\xF3 o se import\xF3 un grupo dentro de una campa\xF1a de la cuenta.",
|
|
40633
|
+
description: "Se cre\xF3 o se import\xF3 un grupo dentro de una campa\xF1a de la cuenta; `source` vale `imported` si el grupo ya exist\xEDa en WhatsApp y entr\xF3 por una importaci\xF3n o una sincronizaci\xF3n, y `created` en cualquier otro caso.",
|
|
40624
40634
|
tags: [
|
|
40625
40635
|
"Webhooks"
|
|
40626
40636
|
],
|
|
@@ -40690,7 +40700,7 @@ var openapi_default = {
|
|
|
40690
40700
|
type: "group"
|
|
40691
40701
|
},
|
|
40692
40702
|
campaign: {
|
|
40693
|
-
uuid: "
|
|
40703
|
+
uuid: "xK9mQz",
|
|
40694
40704
|
name: "Campa\xF1a de ejemplo"
|
|
40695
40705
|
},
|
|
40696
40706
|
source: "created",
|
|
@@ -40874,7 +40884,7 @@ var openapi_default = {
|
|
|
40874
40884
|
name: "Grupo de ejemplo"
|
|
40875
40885
|
},
|
|
40876
40886
|
campaign: {
|
|
40877
|
-
uuid: "
|
|
40887
|
+
uuid: "xK9mQz"
|
|
40878
40888
|
},
|
|
40879
40889
|
reason: "admin_access_lost",
|
|
40880
40890
|
workspace_id: 37
|
|
@@ -40964,7 +40974,7 @@ var openapi_default = {
|
|
|
40964
40974
|
name: "Grupo de ejemplo"
|
|
40965
40975
|
},
|
|
40966
40976
|
campaign: {
|
|
40967
|
-
uuid: "
|
|
40977
|
+
uuid: "xK9mQz"
|
|
40968
40978
|
},
|
|
40969
40979
|
reason: "access_restored",
|
|
40970
40980
|
workspace_id: 37
|
|
@@ -41148,7 +41158,7 @@ var openapi_default = {
|
|
|
41148
41158
|
uid: "120363000000000001@g.us"
|
|
41149
41159
|
},
|
|
41150
41160
|
participant: {
|
|
41151
|
-
identity: "
|
|
41161
|
+
identity: "5491100000000",
|
|
41152
41162
|
identity_type: "phone",
|
|
41153
41163
|
name: "Ana P\xE9rez"
|
|
41154
41164
|
},
|
|
@@ -41242,7 +41252,7 @@ var openapi_default = {
|
|
|
41242
41252
|
occurred_at: "2026-10-01T12:00:00Z",
|
|
41243
41253
|
data: {
|
|
41244
41254
|
campaign: {
|
|
41245
|
-
uuid: "
|
|
41255
|
+
uuid: "xK9mQz",
|
|
41246
41256
|
name: "Campa\xF1a de ejemplo"
|
|
41247
41257
|
},
|
|
41248
41258
|
from: "active",
|
|
@@ -41330,7 +41340,7 @@ var openapi_default = {
|
|
|
41330
41340
|
occurred_at: "2026-10-01T12:00:00Z",
|
|
41331
41341
|
data: {
|
|
41332
41342
|
campaign: {
|
|
41333
|
-
uuid: "
|
|
41343
|
+
uuid: "xK9mQz"
|
|
41334
41344
|
},
|
|
41335
41345
|
pipeline: {
|
|
41336
41346
|
uuid: "00000000-0000-4000-8000-00000000000b",
|
|
@@ -41437,7 +41447,7 @@ var openapi_default = {
|
|
|
41437
41447
|
uuid: "00000000-0000-4000-8000-000000000004"
|
|
41438
41448
|
},
|
|
41439
41449
|
participant: {
|
|
41440
|
-
identity: "
|
|
41450
|
+
identity: "5491100000000",
|
|
41441
41451
|
identity_type: "phone",
|
|
41442
41452
|
name: null
|
|
41443
41453
|
},
|
|
@@ -41532,7 +41542,7 @@ var openapi_default = {
|
|
|
41532
41542
|
type: "group"
|
|
41533
41543
|
},
|
|
41534
41544
|
campaign: {
|
|
41535
|
-
uuid: "
|
|
41545
|
+
uuid: "xK9mQz",
|
|
41536
41546
|
name: "Campa\xF1a de ejemplo"
|
|
41537
41547
|
},
|
|
41538
41548
|
invite_link: "https://chat.whatsapp.com/EjemploNuevo0000000000001",
|
|
@@ -41627,7 +41637,7 @@ var openapi_default = {
|
|
|
41627
41637
|
type: "group"
|
|
41628
41638
|
},
|
|
41629
41639
|
campaign: {
|
|
41630
|
-
uuid: "
|
|
41640
|
+
uuid: "xK9mQz",
|
|
41631
41641
|
name: "Campa\xF1a de ejemplo"
|
|
41632
41642
|
},
|
|
41633
41643
|
reason: "http_404",
|
|
@@ -42077,7 +42087,7 @@ var openapi_default = {
|
|
|
42077
42087
|
"mac.usage_100": {
|
|
42078
42088
|
post: {
|
|
42079
42089
|
summary: "mac.usage_100",
|
|
42080
|
-
description: "La cuenta agot\xF3 sus contactos activos mensuales del ciclo; se abre una gracia de 24 horas cuyo vencimiento viaja en `grace_expires_at`.",
|
|
42090
|
+
description: "La cuenta agot\xF3 sus contactos activos mensuales del ciclo; se abre una gracia de 24 horas cuyo vencimiento viaja en `grace_expires_at`. `workspace_id` es el workspace al que se rutea el evento, como en todos los eventos: el workspace con facturaci\xF3n propia cuyo pool se agot\xF3, o el workspace por defecto cuando el pool es el de la cuenta.",
|
|
42081
42091
|
"x-fc-status": "live",
|
|
42082
42092
|
parameters: [
|
|
42083
42093
|
{
|
|
@@ -42145,7 +42155,7 @@ var openapi_default = {
|
|
|
42145
42155
|
"mac.usage_80": {
|
|
42146
42156
|
post: {
|
|
42147
42157
|
summary: "mac.usage_80",
|
|
42148
|
-
description: "La cuenta alcanz\xF3 el 80% de sus contactos activos mensuales del ciclo.",
|
|
42158
|
+
description: "La cuenta alcanz\xF3 el 80% de sus contactos activos mensuales del ciclo. `workspace_id` es el workspace al que se rutea el evento, como en todos los eventos: el workspace con facturaci\xF3n propia cuyo pool alcanz\xF3 el umbral, o el workspace por defecto cuando el pool es el de la cuenta.",
|
|
42149
42159
|
"x-fc-status": "live",
|
|
42150
42160
|
parameters: [
|
|
42151
42161
|
{
|
|
@@ -43986,10 +43996,10 @@ var openapi_default = {
|
|
|
43986
43996
|
name: "Grupo de ejemplo"
|
|
43987
43997
|
},
|
|
43988
43998
|
campaign: {
|
|
43989
|
-
uuid: "
|
|
43999
|
+
uuid: "xK9mQz"
|
|
43990
44000
|
},
|
|
43991
44001
|
participant: {
|
|
43992
|
-
identity: "
|
|
44002
|
+
identity: "5491100000000",
|
|
43993
44003
|
identity_type: "phone",
|
|
43994
44004
|
name: "Ana P\xE9rez"
|
|
43995
44005
|
}
|
|
@@ -44135,10 +44145,10 @@ var openapi_default = {
|
|
|
44135
44145
|
name: "Grupo de ejemplo"
|
|
44136
44146
|
},
|
|
44137
44147
|
campaign: {
|
|
44138
|
-
uuid: "
|
|
44148
|
+
uuid: "xK9mQz"
|
|
44139
44149
|
},
|
|
44140
44150
|
participant: {
|
|
44141
|
-
identity: "
|
|
44151
|
+
identity: "5491100000000",
|
|
44142
44152
|
identity_type: "phone",
|
|
44143
44153
|
name: "Ana P\xE9rez"
|
|
44144
44154
|
}
|
|
@@ -54012,6 +54022,224 @@ var openapi_default = {
|
|
|
54012
54022
|
],
|
|
54013
54023
|
title: "UpdateKanbanStageRequest"
|
|
54014
54024
|
},
|
|
54025
|
+
UpdateLeadScoreSettingsRequest: {
|
|
54026
|
+
type: "object",
|
|
54027
|
+
properties: {
|
|
54028
|
+
hot_threshold: {
|
|
54029
|
+
type: "integer",
|
|
54030
|
+
minimum: 0,
|
|
54031
|
+
maximum: 100
|
|
54032
|
+
},
|
|
54033
|
+
warm_threshold: {
|
|
54034
|
+
type: "integer",
|
|
54035
|
+
minimum: 0,
|
|
54036
|
+
maximum: 100
|
|
54037
|
+
},
|
|
54038
|
+
min_signals: {
|
|
54039
|
+
type: "integer",
|
|
54040
|
+
minimum: 1,
|
|
54041
|
+
maximum: 20
|
|
54042
|
+
},
|
|
54043
|
+
hysteresis: {
|
|
54044
|
+
type: "integer",
|
|
54045
|
+
minimum: 0,
|
|
54046
|
+
maximum: 25
|
|
54047
|
+
},
|
|
54048
|
+
decay_enabled: {
|
|
54049
|
+
type: "boolean"
|
|
54050
|
+
},
|
|
54051
|
+
rules: {
|
|
54052
|
+
type: "array",
|
|
54053
|
+
items: {
|
|
54054
|
+
type: "object",
|
|
54055
|
+
properties: {
|
|
54056
|
+
id: {
|
|
54057
|
+
type: "string",
|
|
54058
|
+
maxLength: 64
|
|
54059
|
+
},
|
|
54060
|
+
signal: {
|
|
54061
|
+
type: "string",
|
|
54062
|
+
enum: [
|
|
54063
|
+
"tag_added",
|
|
54064
|
+
"tag_removed",
|
|
54065
|
+
"stage_advanced",
|
|
54066
|
+
"broadcast_reply",
|
|
54067
|
+
"message_reply",
|
|
54068
|
+
"intent_keyword",
|
|
54069
|
+
"group_join",
|
|
54070
|
+
"group_leave",
|
|
54071
|
+
"group_reaction",
|
|
54072
|
+
"group_poll_vote",
|
|
54073
|
+
"link_click",
|
|
54074
|
+
"automation_completed"
|
|
54075
|
+
]
|
|
54076
|
+
},
|
|
54077
|
+
mode: {
|
|
54078
|
+
type: "string",
|
|
54079
|
+
enum: [
|
|
54080
|
+
"event",
|
|
54081
|
+
"state"
|
|
54082
|
+
]
|
|
54083
|
+
},
|
|
54084
|
+
points: {
|
|
54085
|
+
type: "integer",
|
|
54086
|
+
minimum: -100,
|
|
54087
|
+
maximum: 100
|
|
54088
|
+
},
|
|
54089
|
+
daily_cap: {
|
|
54090
|
+
type: [
|
|
54091
|
+
"integer",
|
|
54092
|
+
"null"
|
|
54093
|
+
],
|
|
54094
|
+
minimum: 1
|
|
54095
|
+
},
|
|
54096
|
+
unique_scope: {
|
|
54097
|
+
type: "string",
|
|
54098
|
+
enum: [
|
|
54099
|
+
"none",
|
|
54100
|
+
"contact",
|
|
54101
|
+
"contact_scope"
|
|
54102
|
+
]
|
|
54103
|
+
},
|
|
54104
|
+
enabled: {
|
|
54105
|
+
type: "boolean"
|
|
54106
|
+
},
|
|
54107
|
+
disqualifies: {
|
|
54108
|
+
type: "boolean"
|
|
54109
|
+
},
|
|
54110
|
+
on_release: {
|
|
54111
|
+
type: "string",
|
|
54112
|
+
enum: [
|
|
54113
|
+
"restore",
|
|
54114
|
+
"keep"
|
|
54115
|
+
]
|
|
54116
|
+
},
|
|
54117
|
+
config: {
|
|
54118
|
+
type: "object",
|
|
54119
|
+
properties: {
|
|
54120
|
+
keywords: {
|
|
54121
|
+
type: "array",
|
|
54122
|
+
items: {
|
|
54123
|
+
type: "string",
|
|
54124
|
+
minLength: 1
|
|
54125
|
+
},
|
|
54126
|
+
maxItems: 50
|
|
54127
|
+
},
|
|
54128
|
+
broadcast_ids: {
|
|
54129
|
+
type: [
|
|
54130
|
+
"array",
|
|
54131
|
+
"null"
|
|
54132
|
+
],
|
|
54133
|
+
items: {
|
|
54134
|
+
type: "integer"
|
|
54135
|
+
},
|
|
54136
|
+
maxItems: 100
|
|
54137
|
+
},
|
|
54138
|
+
group_ids: {
|
|
54139
|
+
type: [
|
|
54140
|
+
"array",
|
|
54141
|
+
"null"
|
|
54142
|
+
],
|
|
54143
|
+
items: {
|
|
54144
|
+
type: "string",
|
|
54145
|
+
minLength: 1,
|
|
54146
|
+
maxLength: 255
|
|
54147
|
+
},
|
|
54148
|
+
maxItems: 100
|
|
54149
|
+
},
|
|
54150
|
+
flow_ids: {
|
|
54151
|
+
type: [
|
|
54152
|
+
"array",
|
|
54153
|
+
"null"
|
|
54154
|
+
],
|
|
54155
|
+
items: {
|
|
54156
|
+
type: "integer"
|
|
54157
|
+
},
|
|
54158
|
+
maxItems: 100
|
|
54159
|
+
},
|
|
54160
|
+
whalink_ids: {
|
|
54161
|
+
type: [
|
|
54162
|
+
"array",
|
|
54163
|
+
"null"
|
|
54164
|
+
],
|
|
54165
|
+
items: {
|
|
54166
|
+
type: "string",
|
|
54167
|
+
minLength: 1,
|
|
54168
|
+
maxLength: 255
|
|
54169
|
+
},
|
|
54170
|
+
maxItems: 100
|
|
54171
|
+
},
|
|
54172
|
+
tag_ids: {
|
|
54173
|
+
type: [
|
|
54174
|
+
"array",
|
|
54175
|
+
"null"
|
|
54176
|
+
],
|
|
54177
|
+
items: {
|
|
54178
|
+
type: "integer"
|
|
54179
|
+
},
|
|
54180
|
+
maxItems: 100
|
|
54181
|
+
},
|
|
54182
|
+
stage_ids: {
|
|
54183
|
+
type: [
|
|
54184
|
+
"array",
|
|
54185
|
+
"null"
|
|
54186
|
+
],
|
|
54187
|
+
items: {
|
|
54188
|
+
type: "integer"
|
|
54189
|
+
},
|
|
54190
|
+
maxItems: 100
|
|
54191
|
+
}
|
|
54192
|
+
}
|
|
54193
|
+
}
|
|
54194
|
+
},
|
|
54195
|
+
required: [
|
|
54196
|
+
"id",
|
|
54197
|
+
"signal",
|
|
54198
|
+
"mode",
|
|
54199
|
+
"points",
|
|
54200
|
+
"unique_scope",
|
|
54201
|
+
"enabled",
|
|
54202
|
+
"disqualifies",
|
|
54203
|
+
"on_release"
|
|
54204
|
+
]
|
|
54205
|
+
},
|
|
54206
|
+
maxItems: 30
|
|
54207
|
+
},
|
|
54208
|
+
decay_steps: {
|
|
54209
|
+
type: "array",
|
|
54210
|
+
items: {
|
|
54211
|
+
type: "object",
|
|
54212
|
+
properties: {
|
|
54213
|
+
days: {
|
|
54214
|
+
type: "integer",
|
|
54215
|
+
minimum: 1,
|
|
54216
|
+
maximum: 365
|
|
54217
|
+
},
|
|
54218
|
+
points: {
|
|
54219
|
+
type: "integer",
|
|
54220
|
+
minimum: -100,
|
|
54221
|
+
maximum: -1
|
|
54222
|
+
}
|
|
54223
|
+
},
|
|
54224
|
+
required: [
|
|
54225
|
+
"days",
|
|
54226
|
+
"points"
|
|
54227
|
+
]
|
|
54228
|
+
},
|
|
54229
|
+
maxItems: 5
|
|
54230
|
+
}
|
|
54231
|
+
},
|
|
54232
|
+
required: [
|
|
54233
|
+
"hot_threshold",
|
|
54234
|
+
"warm_threshold",
|
|
54235
|
+
"min_signals",
|
|
54236
|
+
"hysteresis",
|
|
54237
|
+
"decay_enabled",
|
|
54238
|
+
"rules",
|
|
54239
|
+
"decay_steps"
|
|
54240
|
+
],
|
|
54241
|
+
title: "UpdateLeadScoreSettingsRequest"
|
|
54242
|
+
},
|
|
54015
54243
|
UpdateMessageTemplateRequest: {
|
|
54016
54244
|
type: "object",
|
|
54017
54245
|
properties: {
|
|
@@ -55758,8 +55986,8 @@ var openapi_default = {
|
|
|
55758
55986
|
generated_by: "scripts/generate.mjs",
|
|
55759
55987
|
note: "GENERATED: do not edit it. The portal's snapshot plus the pending layers.",
|
|
55760
55988
|
inputs: {
|
|
55761
|
-
"spec/funnelchat.json": "
|
|
55762
|
-
"spec/pending.json": "
|
|
55989
|
+
"spec/funnelchat.json": "19e91748ddfe19eef74886264ee984d360417596745e5a900a02a7a831b570a0",
|
|
55990
|
+
"spec/pending.json": "665399018a4a5193038efd4471c4e8655b2fd05400eb9bd9b621627148f8be47",
|
|
55763
55991
|
"spec/pending-sandbox.json": "32bcbfef902fbabd57e1626f4d97e964b89f3c561c7b0f0e21531c8576019aaf"
|
|
55764
55992
|
},
|
|
55765
55993
|
snapshot_commit: null,
|
|
@@ -56832,7 +57060,7 @@ function shapeOnlyAnswer(op) {
|
|
|
56832
57060
|
|
|
56833
57061
|
// package.json
|
|
56834
57062
|
var package_default = {
|
|
56835
|
-
version: "0.5.
|
|
57063
|
+
version: "0.5.3"};
|
|
56836
57064
|
|
|
56837
57065
|
// src/version.ts
|
|
56838
57066
|
var VERSION = package_default.version;
|
|
@@ -61350,5 +61578,5 @@ function createSandbox(options = {}) {
|
|
|
61350
61578
|
}
|
|
61351
61579
|
|
|
61352
61580
|
export { ConfigError, DEFAULT_CONFIG_FILE, DEFAULT_PORT, DELIVERY_HEADER, EDGE_ERRORS, EVENT_HEADER, FAILURE_REASONS, FORM_TEMPLATES, META_ERRORS, REJECTIONS, REQUEST_ID_HEADER, SEND_FILE_TYPES, SIGNATURE_HEADER, SIMULATED_HEADER, SUPPORTED_EXTENSIONS, VERSION, catalog, createSandbox, defaultConfig, mergeConfig, parseArgs, resolveConfig, signature };
|
|
61353
|
-
//# sourceMappingURL=chunk-
|
|
61354
|
-
//# sourceMappingURL=chunk-
|
|
61581
|
+
//# sourceMappingURL=chunk-ZHTK33SS.js.map
|
|
61582
|
+
//# sourceMappingURL=chunk-ZHTK33SS.js.map
|
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { ConfigError, parseArgs, VERSION, DEFAULT_PORT, DEFAULT_CONFIG_FILE, resolveConfig, createSandbox } from './chunk-
|
|
2
|
+
import { ConfigError, parseArgs, VERSION, DEFAULT_PORT, DEFAULT_CONFIG_FILE, resolveConfig, createSandbox } from './chunk-ZHTK33SS.js';
|
|
3
3
|
|
|
4
4
|
// src/cli.ts
|
|
5
5
|
var HELP = `funnelchat-sandbox ${VERSION}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { DELIVERY_HEADER, EDGE_ERRORS, EVENT_HEADER, FAILURE_REASONS, FORM_TEMPLATES, META_ERRORS, REJECTIONS, REQUEST_ID_HEADER, SEND_FILE_TYPES, SIGNATURE_HEADER, SIMULATED_HEADER, SUPPORTED_EXTENSIONS, VERSION, catalog, createSandbox, defaultConfig, mergeConfig, signature } from './chunk-
|
|
1
|
+
export { DELIVERY_HEADER, EDGE_ERRORS, EVENT_HEADER, FAILURE_REASONS, FORM_TEMPLATES, META_ERRORS, REJECTIONS, REQUEST_ID_HEADER, SEND_FILE_TYPES, SIGNATURE_HEADER, SIMULATED_HEADER, SUPPORTED_EXTENSIONS, VERSION, catalog, createSandbox, defaultConfig, mergeConfig, signature } from './chunk-ZHTK33SS.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
package/spec/procedencia.json
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"description": "Where each file of spec/ came from. Written by `npm run generate -- --spec <file>` or `-- --pending <file>`; do not edit it by hand. spec/pending-sandbox.json belongs to this repo: its sources are inside it.",
|
|
3
3
|
"snapshot": {
|
|
4
4
|
"file": "spec/funnelchat.json",
|
|
5
|
-
"sha256": "
|
|
6
|
-
"bytes":
|
|
5
|
+
"sha256": "19e91748ddfe19eef74886264ee984d360417596745e5a900a02a7a831b570a0",
|
|
6
|
+
"bytes": 891547,
|
|
7
7
|
"source": {
|
|
8
8
|
"repository": null,
|
|
9
9
|
"path": null,
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
"commit_date": null,
|
|
13
13
|
"file_tracked_in_git": null,
|
|
14
14
|
"tracked_files_clean": null,
|
|
15
|
-
"file_modified_at": "2026-11-
|
|
15
|
+
"file_modified_at": "2026-11-14T12:30:29.511Z",
|
|
16
16
|
"url": "https://developers-portal.funnelchat.app/specs/funnelchat.json",
|
|
17
|
-
"portal_version": "v0.6.
|
|
18
|
-
"note": "The spec the developer portal publishes as v0.6.
|
|
17
|
+
"portal_version": "v0.6.18",
|
|
18
|
+
"note": "The spec the developer portal publishes as v0.6.18: only the operations and events the portal shows. The sha256 is the one of the file the portal publishes in that version."
|
|
19
19
|
},
|
|
20
|
-
"imported_at": "2026-11-
|
|
20
|
+
"imported_at": "2026-11-14T12:32:24.426Z",
|
|
21
21
|
"spec": {
|
|
22
22
|
"openapi": "3.1.0",
|
|
23
23
|
"title": "Funnelchat API",
|