order3000 1.5.0 → 1.6.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/client.cjs +50 -14
- package/dist/client.d.cts +350 -19
- package/dist/client.d.mts +350 -19
- package/dist/client.mjs +50 -14
- package/dist/schemas.cjs +462 -4
- package/dist/schemas.d.cts +268 -3
- package/dist/schemas.d.mts +268 -3
- package/dist/schemas.mjs +462 -4
- package/dist/tracking.cjs +37 -0
- package/dist/tracking.d.cts +34 -0
- package/dist/tracking.d.mts +34 -0
- package/dist/tracking.mjs +33 -0
- package/package.json +11 -1
package/dist/client.mjs
CHANGED
|
@@ -236,6 +236,21 @@ class AdsResource extends BaseResource {
|
|
|
236
236
|
body
|
|
237
237
|
);
|
|
238
238
|
}
|
|
239
|
+
/**
|
|
240
|
+
* Write paste-ready Meta (Facebook/Instagram) ad copy + creative onto the
|
|
241
|
+
* ad's `metaContent` document — the Meta analog of {@link patch} (which writes
|
|
242
|
+
* Google `content`). Pass `metaContent` (primary text / headline / description
|
|
243
|
+
* keyed by locale, `finalUrl`, `callToAction`, the per-placement `creatives`
|
|
244
|
+
* map) and/or `status`; Google `content` is left untouched. Returns the
|
|
245
|
+
* resulting ad.
|
|
246
|
+
*/
|
|
247
|
+
async editMeta(adId, body) {
|
|
248
|
+
return this.request(
|
|
249
|
+
"PATCH",
|
|
250
|
+
`/${encodeURIComponent(adId)}/meta`,
|
|
251
|
+
body
|
|
252
|
+
);
|
|
253
|
+
}
|
|
239
254
|
/**
|
|
240
255
|
* Permanently delete an ad by id. Returns the deleted ad row.
|
|
241
256
|
*/
|
|
@@ -522,7 +537,7 @@ class EventsResource extends BaseResource {
|
|
|
522
537
|
/**
|
|
523
538
|
* List all events for the venue
|
|
524
539
|
* @param options - Optional filters for the list request
|
|
525
|
-
* @returns Array of events with schedule,
|
|
540
|
+
* @returns Array of events with schedule, assets, and promotions
|
|
526
541
|
*/
|
|
527
542
|
async list(options) {
|
|
528
543
|
const queryParams = new URLSearchParams();
|
|
@@ -561,7 +576,7 @@ class EventsResource extends BaseResource {
|
|
|
561
576
|
* parts. The server resolves either form transparently.
|
|
562
577
|
* @param idOrAccessor - The event UUID or accessor (e.g., 'lunch-menu')
|
|
563
578
|
* @param options - Optional expand options
|
|
564
|
-
* @returns The event with optional schedule, timeSlots, menus, and
|
|
579
|
+
* @returns The event with optional schedule, timeSlots, menus, and assets
|
|
565
580
|
*/
|
|
566
581
|
async get(idOrAccessor, options) {
|
|
567
582
|
const queryString = this.buildQueryString(options);
|
|
@@ -597,23 +612,23 @@ class EventsResource extends BaseResource {
|
|
|
597
612
|
);
|
|
598
613
|
}
|
|
599
614
|
/**
|
|
600
|
-
* List the
|
|
601
|
-
* `get(idOrAccessor, { expand: ['
|
|
602
|
-
* `
|
|
615
|
+
* List the assets attached to an event. Convenience over
|
|
616
|
+
* `get(idOrAccessor, { expand: ['assets'] })` — returns the
|
|
617
|
+
* `assets[]` array (empty when the event has none).
|
|
603
618
|
*/
|
|
604
|
-
async
|
|
619
|
+
async listAssets(idOrAccessor) {
|
|
605
620
|
const event = await this.get(idOrAccessor, {
|
|
606
|
-
expand: ["
|
|
621
|
+
expand: ["assets"]
|
|
607
622
|
});
|
|
608
|
-
return event.
|
|
623
|
+
return event.assets ?? [];
|
|
609
624
|
}
|
|
610
625
|
/**
|
|
611
|
-
* Upload a
|
|
626
|
+
* Upload a asset image for an event. The SDK builds the multipart
|
|
612
627
|
* body internally — pass a Buffer/Uint8Array, the original filename,
|
|
613
628
|
* and the MIME type. The asset is stored and linked to the event via
|
|
614
629
|
* `event_assets`; returns the new asset and its public URL.
|
|
615
630
|
*/
|
|
616
|
-
async
|
|
631
|
+
async uploadAsset(idOrAccessor, file) {
|
|
617
632
|
const form = new FormData();
|
|
618
633
|
form.append(
|
|
619
634
|
"file",
|
|
@@ -622,18 +637,18 @@ class EventsResource extends BaseResource {
|
|
|
622
637
|
);
|
|
623
638
|
return this.requestMultipart(
|
|
624
639
|
"POST",
|
|
625
|
-
`/${encodeURIComponent(idOrAccessor)}/
|
|
640
|
+
`/${encodeURIComponent(idOrAccessor)}/assets`,
|
|
626
641
|
form
|
|
627
642
|
);
|
|
628
643
|
}
|
|
629
644
|
/**
|
|
630
|
-
* Remove a
|
|
645
|
+
* Remove a asset from an event. Deletes the asset (storage object +
|
|
631
646
|
* DB row + `event_assets` link). Returns `{ success: true }`.
|
|
632
647
|
*/
|
|
633
|
-
async
|
|
648
|
+
async removeAsset(idOrAccessor, assetId) {
|
|
634
649
|
return this.request(
|
|
635
650
|
"DELETE",
|
|
636
|
-
`/${encodeURIComponent(idOrAccessor)}/
|
|
651
|
+
`/${encodeURIComponent(idOrAccessor)}/assets/${encodeURIComponent(assetId)}`
|
|
637
652
|
);
|
|
638
653
|
}
|
|
639
654
|
}
|
|
@@ -775,6 +790,25 @@ class ReservationsResource extends BaseResource {
|
|
|
775
790
|
}
|
|
776
791
|
}
|
|
777
792
|
|
|
793
|
+
class RitualsResource extends BaseResource {
|
|
794
|
+
constructor(tokenManager, baseUrl) {
|
|
795
|
+
super(tokenManager, baseUrl, "/rituals");
|
|
796
|
+
}
|
|
797
|
+
/**
|
|
798
|
+
* Get a single ritual by accessor (slug). Returns the ritual with its
|
|
799
|
+
* template schedule (time slots + date overrides), media, and the events
|
|
800
|
+
* materialised from it (with per-day covers).
|
|
801
|
+
* @param accessor - The ritual accessor (e.g. 'a-la-carte-weekend')
|
|
802
|
+
* @returns The ritual document
|
|
803
|
+
*/
|
|
804
|
+
async get(accessor) {
|
|
805
|
+
return this.request(
|
|
806
|
+
"GET",
|
|
807
|
+
`/${encodeURIComponent(accessor)}`
|
|
808
|
+
);
|
|
809
|
+
}
|
|
810
|
+
}
|
|
811
|
+
|
|
778
812
|
class SubscriptionsResource extends BaseResource {
|
|
779
813
|
constructor(tokenManager, baseUrl) {
|
|
780
814
|
super(tokenManager, baseUrl, "/subscriptions");
|
|
@@ -1399,6 +1433,7 @@ class O3KClient {
|
|
|
1399
1433
|
__publicField(this, "orders");
|
|
1400
1434
|
__publicField(this, "paymentIntents");
|
|
1401
1435
|
__publicField(this, "reservations");
|
|
1436
|
+
__publicField(this, "rituals");
|
|
1402
1437
|
__publicField(this, "subscriptions");
|
|
1403
1438
|
__publicField(this, "teamOrders");
|
|
1404
1439
|
__publicField(this, "venues");
|
|
@@ -1429,6 +1464,7 @@ class O3KClient {
|
|
|
1429
1464
|
this.tokenManager,
|
|
1430
1465
|
this.baseUrl
|
|
1431
1466
|
);
|
|
1467
|
+
this.rituals = new RitualsResource(this.tokenManager, this.baseUrl);
|
|
1432
1468
|
this.subscriptions = new SubscriptionsResource(
|
|
1433
1469
|
this.tokenManager,
|
|
1434
1470
|
this.baseUrl
|
package/dist/schemas.cjs
CHANGED
|
@@ -13,9 +13,9 @@ const abandonBasketResponseSchema = v4.z.object({
|
|
|
13
13
|
|
|
14
14
|
const actorTypeSchema = v4.z.enum(["human", "robot"]);
|
|
15
15
|
|
|
16
|
-
const adChannelSchema = v4.z.enum(["google"]);
|
|
16
|
+
const adChannelSchema = v4.z.enum(["google", "facebook", "instagram"]);
|
|
17
17
|
|
|
18
|
-
const adOwnerTypeSchema = v4.z.enum(["event"]);
|
|
18
|
+
const adOwnerTypeSchema = v4.z.enum(["event", "ritual"]);
|
|
19
19
|
|
|
20
20
|
const adStatusSchema = v4.z.enum(["draft", "ready", "archived"]);
|
|
21
21
|
|
|
@@ -580,6 +580,27 @@ const createAdResponseSchema = v4.z.object({
|
|
|
580
580
|
v4.z.array(v4.z.any()),
|
|
581
581
|
v4.z.object({}).catchall(v4.z.any())
|
|
582
582
|
]),
|
|
583
|
+
metaContent: v4.z.nullable(
|
|
584
|
+
v4.z.union([
|
|
585
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
586
|
+
v4.z.array(v4.z.any()),
|
|
587
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
588
|
+
])
|
|
589
|
+
),
|
|
590
|
+
metaRefs: v4.z.nullable(
|
|
591
|
+
v4.z.union([
|
|
592
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
593
|
+
v4.z.array(v4.z.any()),
|
|
594
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
595
|
+
])
|
|
596
|
+
),
|
|
597
|
+
targetingOverride: v4.z.nullable(
|
|
598
|
+
v4.z.union([
|
|
599
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
600
|
+
v4.z.array(v4.z.any()),
|
|
601
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
602
|
+
])
|
|
603
|
+
),
|
|
583
604
|
keywords: v4.z.union([
|
|
584
605
|
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
585
606
|
v4.z.array(v4.z.any()),
|
|
@@ -820,6 +841,27 @@ const deleteAdResponseSchema = v4.z.object({
|
|
|
820
841
|
v4.z.array(v4.z.any()),
|
|
821
842
|
v4.z.object({}).catchall(v4.z.any())
|
|
822
843
|
]),
|
|
844
|
+
metaContent: v4.z.nullable(
|
|
845
|
+
v4.z.union([
|
|
846
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
847
|
+
v4.z.array(v4.z.any()),
|
|
848
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
849
|
+
])
|
|
850
|
+
),
|
|
851
|
+
metaRefs: v4.z.nullable(
|
|
852
|
+
v4.z.union([
|
|
853
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
854
|
+
v4.z.array(v4.z.any()),
|
|
855
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
856
|
+
])
|
|
857
|
+
),
|
|
858
|
+
targetingOverride: v4.z.nullable(
|
|
859
|
+
v4.z.union([
|
|
860
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
861
|
+
v4.z.array(v4.z.any()),
|
|
862
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
863
|
+
])
|
|
864
|
+
),
|
|
823
865
|
keywords: v4.z.union([
|
|
824
866
|
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
825
867
|
v4.z.array(v4.z.any()),
|
|
@@ -948,6 +990,27 @@ const editAdResponseSchema = v4.z.object({
|
|
|
948
990
|
v4.z.array(v4.z.any()),
|
|
949
991
|
v4.z.object({}).catchall(v4.z.any())
|
|
950
992
|
]),
|
|
993
|
+
metaContent: v4.z.nullable(
|
|
994
|
+
v4.z.union([
|
|
995
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
996
|
+
v4.z.array(v4.z.any()),
|
|
997
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
998
|
+
])
|
|
999
|
+
),
|
|
1000
|
+
metaRefs: v4.z.nullable(
|
|
1001
|
+
v4.z.union([
|
|
1002
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1003
|
+
v4.z.array(v4.z.any()),
|
|
1004
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1005
|
+
])
|
|
1006
|
+
),
|
|
1007
|
+
targetingOverride: v4.z.nullable(
|
|
1008
|
+
v4.z.union([
|
|
1009
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1010
|
+
v4.z.array(v4.z.any()),
|
|
1011
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1012
|
+
])
|
|
1013
|
+
),
|
|
951
1014
|
keywords: v4.z.union([
|
|
952
1015
|
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
953
1016
|
v4.z.array(v4.z.any()),
|
|
@@ -1188,6 +1251,103 @@ const editEventResponseSchema = v4.z.object({
|
|
|
1188
1251
|
)
|
|
1189
1252
|
}).describe("Successfully updated event with schedule");
|
|
1190
1253
|
|
|
1254
|
+
const editMetaAdRequestSchema = v4.z.object({
|
|
1255
|
+
venueAccessor: v4.z.string().min(1),
|
|
1256
|
+
id: v4.z.string().min(1),
|
|
1257
|
+
metaContent: v4.z.optional(
|
|
1258
|
+
v4.z.object({
|
|
1259
|
+
primaryText: v4.z.object({}).catchall(v4.z.string().max(125)),
|
|
1260
|
+
headline: v4.z.object({}).catchall(v4.z.string().max(40)),
|
|
1261
|
+
description: v4.z.object({}).catchall(v4.z.string().max(30)),
|
|
1262
|
+
finalUrl: v4.z.url(),
|
|
1263
|
+
callToAction: v4.z.string(),
|
|
1264
|
+
creatives: v4.z.object({}).catchall(
|
|
1265
|
+
v4.z.object({
|
|
1266
|
+
assetId: v4.z.string()
|
|
1267
|
+
})
|
|
1268
|
+
)
|
|
1269
|
+
})
|
|
1270
|
+
),
|
|
1271
|
+
get status() {
|
|
1272
|
+
return adStatusSchema.optional();
|
|
1273
|
+
}
|
|
1274
|
+
}).describe("Partial-update body for an existing Meta ad");
|
|
1275
|
+
|
|
1276
|
+
const editMetaAdResponseSchema = v4.z.object({
|
|
1277
|
+
id: v4.z.string(),
|
|
1278
|
+
venueId: v4.z.string(),
|
|
1279
|
+
get ownerEntityType() {
|
|
1280
|
+
return adOwnerTypeSchema;
|
|
1281
|
+
},
|
|
1282
|
+
ownerEntityId: v4.z.string(),
|
|
1283
|
+
get channel() {
|
|
1284
|
+
return adChannelSchema;
|
|
1285
|
+
},
|
|
1286
|
+
get status() {
|
|
1287
|
+
return adStatusSchema;
|
|
1288
|
+
},
|
|
1289
|
+
campaignId: v4.z.nullable(v4.z.string()),
|
|
1290
|
+
content: v4.z.union([
|
|
1291
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1292
|
+
v4.z.array(v4.z.any()),
|
|
1293
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1294
|
+
]),
|
|
1295
|
+
metaContent: v4.z.nullable(
|
|
1296
|
+
v4.z.union([
|
|
1297
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1298
|
+
v4.z.array(v4.z.any()),
|
|
1299
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1300
|
+
])
|
|
1301
|
+
),
|
|
1302
|
+
metaRefs: v4.z.nullable(
|
|
1303
|
+
v4.z.union([
|
|
1304
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1305
|
+
v4.z.array(v4.z.any()),
|
|
1306
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1307
|
+
])
|
|
1308
|
+
),
|
|
1309
|
+
targetingOverride: v4.z.nullable(
|
|
1310
|
+
v4.z.union([
|
|
1311
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1312
|
+
v4.z.array(v4.z.any()),
|
|
1313
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1314
|
+
])
|
|
1315
|
+
),
|
|
1316
|
+
keywords: v4.z.union([
|
|
1317
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1318
|
+
v4.z.array(v4.z.any()),
|
|
1319
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1320
|
+
]),
|
|
1321
|
+
negativeKeywords: v4.z.union([
|
|
1322
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1323
|
+
v4.z.array(v4.z.any()),
|
|
1324
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1325
|
+
]),
|
|
1326
|
+
disabledVenueKeywords: v4.z.union([
|
|
1327
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1328
|
+
v4.z.array(v4.z.any()),
|
|
1329
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1330
|
+
]),
|
|
1331
|
+
dismissedKeywords: v4.z.union([
|
|
1332
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1333
|
+
v4.z.array(v4.z.any()),
|
|
1334
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1335
|
+
]),
|
|
1336
|
+
publishedContentHash: v4.z.nullable(v4.z.string()),
|
|
1337
|
+
publishedAt: v4.z.nullable(v4.z.any()),
|
|
1338
|
+
pushedKeywords: v4.z.nullable(
|
|
1339
|
+
v4.z.union([
|
|
1340
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1341
|
+
v4.z.array(v4.z.any()),
|
|
1342
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1343
|
+
])
|
|
1344
|
+
),
|
|
1345
|
+
createdBy: v4.z.nullable(v4.z.string()),
|
|
1346
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
1347
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
1348
|
+
updatedAt: v4.z.nullable(v4.z.any())
|
|
1349
|
+
}).describe("Successfully updated Meta ad");
|
|
1350
|
+
|
|
1191
1351
|
const entityOwnerTypeSchema = v4.z.enum([
|
|
1192
1352
|
"event",
|
|
1193
1353
|
"dish",
|
|
@@ -1260,6 +1420,27 @@ const fetchAdResponseSchema = v4.z.object({
|
|
|
1260
1420
|
v4.z.array(v4.z.any()),
|
|
1261
1421
|
v4.z.object({}).catchall(v4.z.any())
|
|
1262
1422
|
]),
|
|
1423
|
+
metaContent: v4.z.nullable(
|
|
1424
|
+
v4.z.union([
|
|
1425
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1426
|
+
v4.z.array(v4.z.any()),
|
|
1427
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1428
|
+
])
|
|
1429
|
+
),
|
|
1430
|
+
metaRefs: v4.z.nullable(
|
|
1431
|
+
v4.z.union([
|
|
1432
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1433
|
+
v4.z.array(v4.z.any()),
|
|
1434
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1435
|
+
])
|
|
1436
|
+
),
|
|
1437
|
+
targetingOverride: v4.z.nullable(
|
|
1438
|
+
v4.z.union([
|
|
1439
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1440
|
+
v4.z.array(v4.z.any()),
|
|
1441
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1442
|
+
])
|
|
1443
|
+
),
|
|
1263
1444
|
keywords: v4.z.union([
|
|
1264
1445
|
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1265
1446
|
v4.z.array(v4.z.any()),
|
|
@@ -1315,6 +1496,27 @@ const fetchAdsResponseSchema = v4.z.array(
|
|
|
1315
1496
|
v4.z.array(v4.z.any()),
|
|
1316
1497
|
v4.z.object({}).catchall(v4.z.any())
|
|
1317
1498
|
]),
|
|
1499
|
+
metaContent: v4.z.nullable(
|
|
1500
|
+
v4.z.union([
|
|
1501
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1502
|
+
v4.z.array(v4.z.any()),
|
|
1503
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1504
|
+
])
|
|
1505
|
+
),
|
|
1506
|
+
metaRefs: v4.z.nullable(
|
|
1507
|
+
v4.z.union([
|
|
1508
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1509
|
+
v4.z.array(v4.z.any()),
|
|
1510
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1511
|
+
])
|
|
1512
|
+
),
|
|
1513
|
+
targetingOverride: v4.z.nullable(
|
|
1514
|
+
v4.z.union([
|
|
1515
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1516
|
+
v4.z.array(v4.z.any()),
|
|
1517
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
1518
|
+
])
|
|
1519
|
+
),
|
|
1318
1520
|
keywords: v4.z.union([
|
|
1319
1521
|
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
1320
1522
|
v4.z.array(v4.z.any()),
|
|
@@ -1681,7 +1883,7 @@ const fetchEventResponseSchema = v4.z.object({
|
|
|
1681
1883
|
)
|
|
1682
1884
|
)
|
|
1683
1885
|
}).describe(
|
|
1684
|
-
"Event details. Nested objects (schedule, timeSlots, menus,
|
|
1886
|
+
"Event details. Nested objects (schedule, timeSlots, menus, assets, nextOccurrence) pass through; their shape follows the SDK Event interface."
|
|
1685
1887
|
);
|
|
1686
1888
|
|
|
1687
1889
|
const promotionBenefitTypeSchema = v4.z.enum([
|
|
@@ -2252,6 +2454,233 @@ const fetchMenuSubscriptionsResponseSchema = v4.z.array(
|
|
|
2252
2454
|
})
|
|
2253
2455
|
);
|
|
2254
2456
|
|
|
2457
|
+
const fetchRitualResponseSchema = v4.z.object({
|
|
2458
|
+
id: v4.z.string(),
|
|
2459
|
+
venueId: v4.z.string(),
|
|
2460
|
+
accessor: v4.z.string(),
|
|
2461
|
+
get ritualType() {
|
|
2462
|
+
return ritualTypeSchema;
|
|
2463
|
+
},
|
|
2464
|
+
scheduleId: v4.z.nullable(v4.z.string()),
|
|
2465
|
+
name: v4.z.union([
|
|
2466
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2467
|
+
v4.z.array(v4.z.any()),
|
|
2468
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2469
|
+
]),
|
|
2470
|
+
description: v4.z.nullable(
|
|
2471
|
+
v4.z.union([
|
|
2472
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2473
|
+
v4.z.array(v4.z.any()),
|
|
2474
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2475
|
+
])
|
|
2476
|
+
),
|
|
2477
|
+
playbook: v4.z.nullable(
|
|
2478
|
+
v4.z.union([
|
|
2479
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2480
|
+
v4.z.array(v4.z.any()),
|
|
2481
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2482
|
+
])
|
|
2483
|
+
),
|
|
2484
|
+
maxBookings: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2485
|
+
maxGuests: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2486
|
+
minPartySize: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2487
|
+
maxPartySize: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2488
|
+
isPublic: v4.z.boolean(),
|
|
2489
|
+
reservationsEnabled: v4.z.boolean(),
|
|
2490
|
+
bookingOpensAtDays: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2491
|
+
bookingClosesAtOffset: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2492
|
+
isActive: v4.z.boolean(),
|
|
2493
|
+
isFeatured: v4.z.boolean(),
|
|
2494
|
+
priority: v4.z.int().min(-2147483648).max(2147483647),
|
|
2495
|
+
createdBy: v4.z.nullable(v4.z.string()),
|
|
2496
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2497
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2498
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2499
|
+
assets: v4.z.array(
|
|
2500
|
+
v4.z.object({
|
|
2501
|
+
id: v4.z.string(),
|
|
2502
|
+
get type() {
|
|
2503
|
+
return assetTypeSchema;
|
|
2504
|
+
},
|
|
2505
|
+
tags: v4.z.nullable(v4.z.array(v4.z.string())),
|
|
2506
|
+
bucket: v4.z.string(),
|
|
2507
|
+
storagePath: v4.z.string(),
|
|
2508
|
+
filename: v4.z.string(),
|
|
2509
|
+
contentType: v4.z.string(),
|
|
2510
|
+
sizeBytes: v4.z.int().min(-2147483648).max(2147483647),
|
|
2511
|
+
caption: v4.z.union([
|
|
2512
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2513
|
+
v4.z.array(v4.z.any()),
|
|
2514
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2515
|
+
]),
|
|
2516
|
+
alt: v4.z.union([
|
|
2517
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2518
|
+
v4.z.array(v4.z.any()),
|
|
2519
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2520
|
+
]),
|
|
2521
|
+
metadata: v4.z.nullable(
|
|
2522
|
+
v4.z.union([
|
|
2523
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2524
|
+
v4.z.array(v4.z.any()),
|
|
2525
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2526
|
+
])
|
|
2527
|
+
),
|
|
2528
|
+
cropArea: v4.z.nullable(
|
|
2529
|
+
v4.z.union([
|
|
2530
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2531
|
+
v4.z.array(v4.z.any()),
|
|
2532
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2533
|
+
])
|
|
2534
|
+
),
|
|
2535
|
+
isActive: v4.z.boolean(),
|
|
2536
|
+
sortIndex: v4.z.nullable(v4.z.string().max(255)),
|
|
2537
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2538
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2539
|
+
createdBy: v4.z.nullable(v4.z.string()),
|
|
2540
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2541
|
+
venueId: v4.z.nullable(v4.z.string()),
|
|
2542
|
+
publicUrl: v4.z.string()
|
|
2543
|
+
})
|
|
2544
|
+
),
|
|
2545
|
+
events: v4.z.array(
|
|
2546
|
+
v4.z.object({
|
|
2547
|
+
id: v4.z.string(),
|
|
2548
|
+
venueId: v4.z.string(),
|
|
2549
|
+
accessor: v4.z.nullable(v4.z.string()),
|
|
2550
|
+
name: v4.z.union([
|
|
2551
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2552
|
+
v4.z.array(v4.z.any()),
|
|
2553
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2554
|
+
]),
|
|
2555
|
+
description: v4.z.nullable(
|
|
2556
|
+
v4.z.union([
|
|
2557
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2558
|
+
v4.z.array(v4.z.any()),
|
|
2559
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2560
|
+
])
|
|
2561
|
+
),
|
|
2562
|
+
scheduleId: v4.z.nullable(v4.z.string()),
|
|
2563
|
+
ritualId: v4.z.nullable(v4.z.string()),
|
|
2564
|
+
occurrenceDate: v4.z.nullable(v4.z.string()),
|
|
2565
|
+
maxBookings: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2566
|
+
maxGuests: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2567
|
+
minPartySize: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2568
|
+
maxPartySize: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2569
|
+
isPublic: v4.z.boolean(),
|
|
2570
|
+
reservationsEnabled: v4.z.boolean(),
|
|
2571
|
+
bookingOpensAtDays: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2572
|
+
bookingClosesAtOffset: v4.z.nullable(
|
|
2573
|
+
v4.z.int().min(-2147483648).max(2147483647)
|
|
2574
|
+
),
|
|
2575
|
+
isActive: v4.z.boolean(),
|
|
2576
|
+
isFeatured: v4.z.boolean(),
|
|
2577
|
+
priority: v4.z.int().min(-2147483648).max(2147483647),
|
|
2578
|
+
createdBy: v4.z.nullable(v4.z.string()),
|
|
2579
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2580
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2581
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2582
|
+
covers: v4.z.number()
|
|
2583
|
+
})
|
|
2584
|
+
),
|
|
2585
|
+
schedule: v4.z.nullable(
|
|
2586
|
+
v4.z.object({
|
|
2587
|
+
id: v4.z.string(),
|
|
2588
|
+
name: v4.z.union([
|
|
2589
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2590
|
+
v4.z.array(v4.z.any()),
|
|
2591
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2592
|
+
]),
|
|
2593
|
+
description: v4.z.nullable(
|
|
2594
|
+
v4.z.union([
|
|
2595
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2596
|
+
v4.z.array(v4.z.any()),
|
|
2597
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2598
|
+
])
|
|
2599
|
+
),
|
|
2600
|
+
timezone: v4.z.string(),
|
|
2601
|
+
rrule: v4.z.nullable(v4.z.string()),
|
|
2602
|
+
exdates: v4.z.nullable(v4.z.array(v4.z.string())),
|
|
2603
|
+
validFrom: v4.z.nullable(v4.z.string()),
|
|
2604
|
+
validTo: v4.z.nullable(v4.z.string()),
|
|
2605
|
+
priority: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2606
|
+
get slotMode() {
|
|
2607
|
+
return slotModeSchema;
|
|
2608
|
+
},
|
|
2609
|
+
intervalDuration: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2610
|
+
duration: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2611
|
+
isActive: v4.z.boolean(),
|
|
2612
|
+
sortIndex: v4.z.nullable(v4.z.string().max(255)),
|
|
2613
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2614
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2615
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2616
|
+
createdBy: v4.z.nullable(v4.z.string()),
|
|
2617
|
+
scheduleTimeSlots: v4.z.array(
|
|
2618
|
+
v4.z.object({
|
|
2619
|
+
scheduleId: v4.z.nullable(v4.z.string()),
|
|
2620
|
+
timeSlotId: v4.z.nullable(v4.z.string()),
|
|
2621
|
+
get dayOfWeek() {
|
|
2622
|
+
return dayOfWeekSchema;
|
|
2623
|
+
},
|
|
2624
|
+
sortIndex: v4.z.nullable(v4.z.string().max(255)),
|
|
2625
|
+
timeSlot: v4.z.nullable(
|
|
2626
|
+
v4.z.object({
|
|
2627
|
+
id: v4.z.string(),
|
|
2628
|
+
startTime: v4.z.string(),
|
|
2629
|
+
endTime: v4.z.nullable(v4.z.string()),
|
|
2630
|
+
isActive: v4.z.nullable(v4.z.boolean()),
|
|
2631
|
+
isSchedulable: v4.z.nullable(v4.z.boolean()),
|
|
2632
|
+
sortIndex: v4.z.nullable(v4.z.string().max(255)),
|
|
2633
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2634
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2635
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2636
|
+
createdBy: v4.z.nullable(v4.z.string())
|
|
2637
|
+
})
|
|
2638
|
+
)
|
|
2639
|
+
})
|
|
2640
|
+
),
|
|
2641
|
+
scheduleOverrides: v4.z.array(
|
|
2642
|
+
v4.z.object({
|
|
2643
|
+
id: v4.z.string(),
|
|
2644
|
+
scheduleId: v4.z.string(),
|
|
2645
|
+
date: v4.z.string(),
|
|
2646
|
+
reason: v4.z.nullable(
|
|
2647
|
+
v4.z.union([
|
|
2648
|
+
v4.z.union([v4.z.boolean(), v4.z.string(), v4.z.number(), v4.z.enum([])]),
|
|
2649
|
+
v4.z.array(v4.z.any()),
|
|
2650
|
+
v4.z.object({}).catchall(v4.z.any())
|
|
2651
|
+
])
|
|
2652
|
+
),
|
|
2653
|
+
isActive: v4.z.boolean(),
|
|
2654
|
+
priority: v4.z.nullable(v4.z.int().min(-2147483648).max(2147483647)),
|
|
2655
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2656
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2657
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2658
|
+
createdBy: v4.z.nullable(v4.z.string()),
|
|
2659
|
+
scheduleOverrideTimeSlots: v4.z.array(
|
|
2660
|
+
v4.z.object({
|
|
2661
|
+
overrideId: v4.z.string(),
|
|
2662
|
+
timeSlotId: v4.z.string(),
|
|
2663
|
+
sortIndex: v4.z.nullable(v4.z.string().max(255)),
|
|
2664
|
+
timeSlot: v4.z.object({
|
|
2665
|
+
id: v4.z.string(),
|
|
2666
|
+
startTime: v4.z.string(),
|
|
2667
|
+
endTime: v4.z.nullable(v4.z.string()),
|
|
2668
|
+
isActive: v4.z.nullable(v4.z.boolean()),
|
|
2669
|
+
isSchedulable: v4.z.nullable(v4.z.boolean()),
|
|
2670
|
+
sortIndex: v4.z.nullable(v4.z.string().max(255)),
|
|
2671
|
+
updatedAt: v4.z.nullable(v4.z.any()),
|
|
2672
|
+
updatedBy: v4.z.nullable(v4.z.string()),
|
|
2673
|
+
createdAt: v4.z.nullable(v4.z.any()),
|
|
2674
|
+
createdBy: v4.z.nullable(v4.z.string())
|
|
2675
|
+
})
|
|
2676
|
+
})
|
|
2677
|
+
)
|
|
2678
|
+
})
|
|
2679
|
+
)
|
|
2680
|
+
})
|
|
2681
|
+
)
|
|
2682
|
+
});
|
|
2683
|
+
|
|
2255
2684
|
const fetchTeamOrderResponseSchema = v4.z.object({
|
|
2256
2685
|
teamOrder: v4.z.object({
|
|
2257
2686
|
id: v4.z.string(),
|
|
@@ -2371,6 +2800,21 @@ const fetchTeamOrderResponseSchema = v4.z.object({
|
|
|
2371
2800
|
isLead: v4.z.boolean()
|
|
2372
2801
|
});
|
|
2373
2802
|
|
|
2803
|
+
const gbpMediaCategorySchema = v4.z.enum([
|
|
2804
|
+
"cover",
|
|
2805
|
+
"logo",
|
|
2806
|
+
"gallery",
|
|
2807
|
+
"video"
|
|
2808
|
+
]);
|
|
2809
|
+
|
|
2810
|
+
const gbpSyncStatusSchema = v4.z.enum([
|
|
2811
|
+
"processing",
|
|
2812
|
+
"live",
|
|
2813
|
+
"rejected",
|
|
2814
|
+
"failed",
|
|
2815
|
+
"removed"
|
|
2816
|
+
]);
|
|
2817
|
+
|
|
2374
2818
|
const getAreaAvailabilityResponseSchema = v4.z.object({
|
|
2375
2819
|
from: v4.z.string().regex(/^\d{4}-\d{2}-\d{2}$/),
|
|
2376
2820
|
to: v4.z.string().regex(/^\d{4}-\d{2}-\d{2}$/),
|
|
@@ -2505,7 +2949,12 @@ const integrationNotificationTypeSchema = v4.z.enum([
|
|
|
2505
2949
|
"reservation_cancelled"
|
|
2506
2950
|
]);
|
|
2507
2951
|
|
|
2508
|
-
const integrationTypeSchema = v4.z.enum([
|
|
2952
|
+
const integrationTypeSchema = v4.z.enum([
|
|
2953
|
+
"telegram",
|
|
2954
|
+
"google_ads",
|
|
2955
|
+
"google_business_profile",
|
|
2956
|
+
"meta_ads"
|
|
2957
|
+
]);
|
|
2509
2958
|
|
|
2510
2959
|
const inventoryAssetStatusSchema = v4.z.enum([
|
|
2511
2960
|
"available",
|
|
@@ -2771,6 +3220,9 @@ const makeReservationRequestSchema = v4.z.object({
|
|
|
2771
3220
|
).nullish(),
|
|
2772
3221
|
wbraid: v4.z.string().describe(
|
|
2773
3222
|
"Google Ads click identifier for web-to-app (iOS) where `gclid` is unavailable."
|
|
3223
|
+
).nullish(),
|
|
3224
|
+
fbclid: v4.z.string().describe(
|
|
3225
|
+
"Meta (Facebook/Instagram) click identifier from the landing URL. Stored for server-side Conversions API reporting."
|
|
2774
3226
|
).nullish()
|
|
2775
3227
|
}).describe("Request payload for making a new reservation");
|
|
2776
3228
|
|
|
@@ -2832,6 +3284,7 @@ const makeReservationResponseSchema = v4.z.object({
|
|
|
2832
3284
|
gclid: v4.z.nullable(v4.z.string()),
|
|
2833
3285
|
gbraid: v4.z.nullable(v4.z.string()),
|
|
2834
3286
|
wbraid: v4.z.nullable(v4.z.string()),
|
|
3287
|
+
fbclid: v4.z.nullable(v4.z.string()),
|
|
2835
3288
|
specialRequests: v4.z.nullable(
|
|
2836
3289
|
v4.z.string().describe("Any special requirements or notes")
|
|
2837
3290
|
),
|
|
@@ -3310,6 +3763,8 @@ const schemas = {
|
|
|
3310
3763
|
EditArticleResponse: editArticleResponseSchema,
|
|
3311
3764
|
EditEventRequest: editEventRequestSchema,
|
|
3312
3765
|
EditEventResponse: editEventResponseSchema,
|
|
3766
|
+
EditMetaAdRequest: editMetaAdRequestSchema,
|
|
3767
|
+
EditMetaAdResponse: editMetaAdResponseSchema,
|
|
3313
3768
|
EntityOwnerType: entityOwnerTypeSchema,
|
|
3314
3769
|
EnumFalse: enumFalseSchema,
|
|
3315
3770
|
EnumTrue: enumTrueSchema,
|
|
@@ -3334,8 +3789,11 @@ const schemas = {
|
|
|
3334
3789
|
FetchMenuBundlesResponse: fetchMenuBundlesResponseSchema,
|
|
3335
3790
|
FetchMenuResponse: fetchMenuResponseSchema,
|
|
3336
3791
|
FetchMenuSubscriptionsResponse: fetchMenuSubscriptionsResponseSchema,
|
|
3792
|
+
FetchRitualResponse: fetchRitualResponseSchema,
|
|
3337
3793
|
FetchTeamOrderResponse: fetchTeamOrderResponseSchema,
|
|
3338
3794
|
FulfillmentType: deliveryAddressSchema.fulfillmentTypeSchema,
|
|
3795
|
+
GbpMediaCategory: gbpMediaCategorySchema,
|
|
3796
|
+
GbpSyncStatus: gbpSyncStatusSchema,
|
|
3339
3797
|
GetAreaAvailabilityResponse: getAreaAvailabilityResponseSchema,
|
|
3340
3798
|
GetBasketTotalsRequest: getBasketTotalsRequestSchema,
|
|
3341
3799
|
GetBasketTotalsResponse: getBasketTotalsResponseSchema,
|