@getlatedev/node 0.1.4 → 0.1.5
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 +3 -0
- package/dist/index.d.mts +919 -9
- package/dist/index.d.ts +919 -9
- package/dist/index.js +138 -0
- package/dist/index.mjs +138 -0
- package/package.json +1 -1
- package/src/client.ts +44 -0
- package/src/generated/sdk.gen.ts +246 -2
- package/src/generated/types.gen.ts +956 -8
|
@@ -1276,7 +1276,7 @@ export type Webhook = {
|
|
|
1276
1276
|
/**
|
|
1277
1277
|
* Events subscribed to
|
|
1278
1278
|
*/
|
|
1279
|
-
events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected')>;
|
|
1279
|
+
events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'message.received')>;
|
|
1280
1280
|
/**
|
|
1281
1281
|
* Whether webhook delivery is enabled
|
|
1282
1282
|
*/
|
|
@@ -1310,7 +1310,7 @@ export type WebhookLog = {
|
|
|
1310
1310
|
* Name of the webhook that was triggered
|
|
1311
1311
|
*/
|
|
1312
1312
|
webhookName?: string;
|
|
1313
|
-
event?: 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'webhook.test';
|
|
1313
|
+
event?: 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'message.received' | 'webhook.test';
|
|
1314
1314
|
url?: string;
|
|
1315
1315
|
status?: 'success' | 'failed';
|
|
1316
1316
|
/**
|
|
@@ -1342,7 +1342,7 @@ export type WebhookLog = {
|
|
|
1342
1342
|
createdAt?: string;
|
|
1343
1343
|
};
|
|
1344
1344
|
|
|
1345
|
-
export type event = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'webhook.test';
|
|
1345
|
+
export type event = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'message.received' | 'webhook.test';
|
|
1346
1346
|
|
|
1347
1347
|
export type status5 = 'success' | 'failed';
|
|
1348
1348
|
|
|
@@ -1405,6 +1405,84 @@ export type event3 = 'account.disconnected';
|
|
|
1405
1405
|
*/
|
|
1406
1406
|
export type disconnectionType = 'intentional' | 'unintentional';
|
|
1407
1407
|
|
|
1408
|
+
/**
|
|
1409
|
+
* Webhook payload for message received events (DMs from Instagram, Facebook, Telegram)
|
|
1410
|
+
*/
|
|
1411
|
+
export type WebhookPayloadMessage = {
|
|
1412
|
+
event?: 'message.received';
|
|
1413
|
+
message?: {
|
|
1414
|
+
/**
|
|
1415
|
+
* Internal message ID
|
|
1416
|
+
*/
|
|
1417
|
+
id?: string;
|
|
1418
|
+
/**
|
|
1419
|
+
* Internal conversation ID
|
|
1420
|
+
*/
|
|
1421
|
+
conversationId?: string;
|
|
1422
|
+
platform?: 'instagram' | 'facebook' | 'telegram';
|
|
1423
|
+
/**
|
|
1424
|
+
* Platform's message ID
|
|
1425
|
+
*/
|
|
1426
|
+
platformMessageId?: string;
|
|
1427
|
+
direction?: 'incoming';
|
|
1428
|
+
/**
|
|
1429
|
+
* Message text content
|
|
1430
|
+
*/
|
|
1431
|
+
text?: (string) | null;
|
|
1432
|
+
attachments?: Array<{
|
|
1433
|
+
/**
|
|
1434
|
+
* Attachment type (image, video, file, sticker, audio)
|
|
1435
|
+
*/
|
|
1436
|
+
type?: string;
|
|
1437
|
+
/**
|
|
1438
|
+
* Attachment URL (may expire for Meta platforms)
|
|
1439
|
+
*/
|
|
1440
|
+
url?: string;
|
|
1441
|
+
/**
|
|
1442
|
+
* Additional attachment metadata
|
|
1443
|
+
*/
|
|
1444
|
+
payload?: {
|
|
1445
|
+
[key: string]: unknown;
|
|
1446
|
+
};
|
|
1447
|
+
}>;
|
|
1448
|
+
sender?: {
|
|
1449
|
+
id?: string;
|
|
1450
|
+
name?: string;
|
|
1451
|
+
username?: string;
|
|
1452
|
+
picture?: string;
|
|
1453
|
+
};
|
|
1454
|
+
sentAt?: string;
|
|
1455
|
+
isRead?: boolean;
|
|
1456
|
+
};
|
|
1457
|
+
conversation?: {
|
|
1458
|
+
id?: string;
|
|
1459
|
+
platformConversationId?: string;
|
|
1460
|
+
participantId?: string;
|
|
1461
|
+
participantName?: string;
|
|
1462
|
+
participantUsername?: string;
|
|
1463
|
+
participantPicture?: string;
|
|
1464
|
+
status?: 'active' | 'archived';
|
|
1465
|
+
};
|
|
1466
|
+
account?: {
|
|
1467
|
+
/**
|
|
1468
|
+
* Social account ID
|
|
1469
|
+
*/
|
|
1470
|
+
id?: string;
|
|
1471
|
+
platform?: string;
|
|
1472
|
+
username?: string;
|
|
1473
|
+
displayName?: string;
|
|
1474
|
+
};
|
|
1475
|
+
timestamp?: string;
|
|
1476
|
+
};
|
|
1477
|
+
|
|
1478
|
+
export type event4 = 'message.received';
|
|
1479
|
+
|
|
1480
|
+
export type platform2 = 'instagram' | 'facebook' | 'telegram';
|
|
1481
|
+
|
|
1482
|
+
export type direction = 'incoming';
|
|
1483
|
+
|
|
1484
|
+
export type status6 = 'active' | 'archived';
|
|
1485
|
+
|
|
1408
1486
|
/**
|
|
1409
1487
|
* Webhook payload for post events
|
|
1410
1488
|
*/
|
|
@@ -1426,7 +1504,7 @@ export type WebhookPayloadPost = {
|
|
|
1426
1504
|
timestamp?: string;
|
|
1427
1505
|
};
|
|
1428
1506
|
|
|
1429
|
-
export type
|
|
1507
|
+
export type event5 = 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial';
|
|
1430
1508
|
|
|
1431
1509
|
export type YouTubeDailyViewsResponse = {
|
|
1432
1510
|
success?: boolean;
|
|
@@ -1473,6 +1551,7 @@ export type YouTubeDailyViewsResponse = {
|
|
|
1473
1551
|
* - Custom thumbnails NOT supported for Shorts via API
|
|
1474
1552
|
* - Scheduled videos are uploaded immediately as the specified visibility and published at scheduled time
|
|
1475
1553
|
* - Visibility defaults to "public" if not specified
|
|
1554
|
+
* - madeForKids defaults to false (not child-directed)
|
|
1476
1555
|
* - Set containsSyntheticMedia: true if your video contains AI-generated content
|
|
1477
1556
|
*
|
|
1478
1557
|
*/
|
|
@@ -1489,6 +1568,19 @@ export type YouTubePlatformData = {
|
|
|
1489
1568
|
*
|
|
1490
1569
|
*/
|
|
1491
1570
|
visibility?: 'public' | 'private' | 'unlisted';
|
|
1571
|
+
/**
|
|
1572
|
+
* COPPA compliance: Audience designation for the video.
|
|
1573
|
+
* - true: Video is made for kids (child-directed content)
|
|
1574
|
+
* - false: Video is NOT made for kids (default)
|
|
1575
|
+
*
|
|
1576
|
+
* This field maps to YouTube's `selfDeclaredMadeForKids` setting. Videos marked as made for kids
|
|
1577
|
+
* have restricted features (no comments, no notifications, limited ad targeting).
|
|
1578
|
+
*
|
|
1579
|
+
* IMPORTANT: If not specified, defaults to false. YouTube requires this to be explicitly set,
|
|
1580
|
+
* otherwise the video may be blocked from views until configured in YouTube Studio.
|
|
1581
|
+
*
|
|
1582
|
+
*/
|
|
1583
|
+
madeForKids?: boolean;
|
|
1492
1584
|
/**
|
|
1493
1585
|
* Optional first comment to post immediately after video upload. Up to 10,000 characters (YouTube's comment limit).
|
|
1494
1586
|
*/
|
|
@@ -2073,6 +2165,21 @@ export type CreatePostResponse = (PostCreateResponse);
|
|
|
2073
2165
|
|
|
2074
2166
|
export type CreatePostError = ({
|
|
2075
2167
|
error?: string;
|
|
2168
|
+
} | {
|
|
2169
|
+
error?: string;
|
|
2170
|
+
details?: {
|
|
2171
|
+
accountId?: string;
|
|
2172
|
+
platform?: string;
|
|
2173
|
+
existingPostId?: string;
|
|
2174
|
+
};
|
|
2175
|
+
} | {
|
|
2176
|
+
error?: string;
|
|
2177
|
+
/**
|
|
2178
|
+
* Additional context about the rate limit
|
|
2179
|
+
*/
|
|
2180
|
+
details?: {
|
|
2181
|
+
[key: string]: unknown;
|
|
2182
|
+
};
|
|
2076
2183
|
});
|
|
2077
2184
|
|
|
2078
2185
|
export type GetPostData = {
|
|
@@ -2137,6 +2244,11 @@ export type BulkUploadPostsResponse = ({
|
|
|
2137
2244
|
|
|
2138
2245
|
export type BulkUploadPostsError = (unknown | {
|
|
2139
2246
|
error?: string;
|
|
2247
|
+
} | {
|
|
2248
|
+
error?: string;
|
|
2249
|
+
details?: {
|
|
2250
|
+
[key: string]: unknown;
|
|
2251
|
+
};
|
|
2140
2252
|
});
|
|
2141
2253
|
|
|
2142
2254
|
export type RetryPostData = {
|
|
@@ -2149,6 +2261,11 @@ export type RetryPostResponse = (PostRetryResponse | unknown);
|
|
|
2149
2261
|
|
|
2150
2262
|
export type RetryPostError = (unknown | {
|
|
2151
2263
|
error?: string;
|
|
2264
|
+
} | {
|
|
2265
|
+
error?: string;
|
|
2266
|
+
details?: {
|
|
2267
|
+
[key: string]: unknown;
|
|
2268
|
+
};
|
|
2152
2269
|
});
|
|
2153
2270
|
|
|
2154
2271
|
export type ListUsersResponse = ({
|
|
@@ -2736,6 +2853,10 @@ export type SelectFacebookPageResponse = ({
|
|
|
2736
2853
|
*/
|
|
2737
2854
|
redirect_url?: string;
|
|
2738
2855
|
account?: {
|
|
2856
|
+
/**
|
|
2857
|
+
* ID of the created SocialAccount
|
|
2858
|
+
*/
|
|
2859
|
+
accountId?: string;
|
|
2739
2860
|
platform?: 'facebook';
|
|
2740
2861
|
username?: string;
|
|
2741
2862
|
displayName?: string;
|
|
@@ -2844,6 +2965,10 @@ export type SelectGoogleBusinessLocationResponse = ({
|
|
|
2844
2965
|
*/
|
|
2845
2966
|
redirect_url?: string;
|
|
2846
2967
|
account?: {
|
|
2968
|
+
/**
|
|
2969
|
+
* ID of the created SocialAccount
|
|
2970
|
+
*/
|
|
2971
|
+
accountId?: string;
|
|
2847
2972
|
platform?: 'googlebusiness';
|
|
2848
2973
|
username?: string;
|
|
2849
2974
|
displayName?: string;
|
|
@@ -3050,7 +3175,26 @@ export type SelectLinkedInOrganizationData = {
|
|
|
3050
3175
|
|
|
3051
3176
|
export type SelectLinkedInOrganizationResponse = ({
|
|
3052
3177
|
message?: string;
|
|
3053
|
-
|
|
3178
|
+
/**
|
|
3179
|
+
* The redirect URL with connection params appended (only if redirect_url was provided in request)
|
|
3180
|
+
*/
|
|
3181
|
+
redirect_url?: string;
|
|
3182
|
+
account?: {
|
|
3183
|
+
/**
|
|
3184
|
+
* ID of the created SocialAccount
|
|
3185
|
+
*/
|
|
3186
|
+
accountId?: string;
|
|
3187
|
+
platform?: 'linkedin';
|
|
3188
|
+
username?: string;
|
|
3189
|
+
displayName?: string;
|
|
3190
|
+
profilePicture?: string;
|
|
3191
|
+
isActive?: boolean;
|
|
3192
|
+
accountType?: 'personal' | 'organization';
|
|
3193
|
+
};
|
|
3194
|
+
bulkRefresh?: {
|
|
3195
|
+
updatedCount?: number;
|
|
3196
|
+
errors?: number;
|
|
3197
|
+
};
|
|
3054
3198
|
});
|
|
3055
3199
|
|
|
3056
3200
|
export type SelectLinkedInOrganizationError = (unknown | {
|
|
@@ -3147,6 +3291,10 @@ export type SelectPinterestBoardResponse = ({
|
|
|
3147
3291
|
*/
|
|
3148
3292
|
redirect_url?: string;
|
|
3149
3293
|
account?: {
|
|
3294
|
+
/**
|
|
3295
|
+
* ID of the created SocialAccount
|
|
3296
|
+
*/
|
|
3297
|
+
accountId?: string;
|
|
3150
3298
|
platform?: 'pinterest';
|
|
3151
3299
|
username?: string;
|
|
3152
3300
|
displayName?: string;
|
|
@@ -3277,6 +3425,10 @@ export type SelectSnapchatProfileResponse = ({
|
|
|
3277
3425
|
*/
|
|
3278
3426
|
redirect_url?: string;
|
|
3279
3427
|
account?: {
|
|
3428
|
+
/**
|
|
3429
|
+
* ID of the created SocialAccount
|
|
3430
|
+
*/
|
|
3431
|
+
accountId?: string;
|
|
3280
3432
|
platform?: 'snapchat';
|
|
3281
3433
|
username?: string;
|
|
3282
3434
|
displayName?: string;
|
|
@@ -3427,6 +3579,28 @@ export type CompleteTelegramConnectError = ({
|
|
|
3427
3579
|
error?: string;
|
|
3428
3580
|
} | unknown);
|
|
3429
3581
|
|
|
3582
|
+
export type GetFacebookPagesData = {
|
|
3583
|
+
path: {
|
|
3584
|
+
accountId: string;
|
|
3585
|
+
};
|
|
3586
|
+
};
|
|
3587
|
+
|
|
3588
|
+
export type GetFacebookPagesResponse = ({
|
|
3589
|
+
pages?: Array<{
|
|
3590
|
+
id?: string;
|
|
3591
|
+
name?: string;
|
|
3592
|
+
username?: string;
|
|
3593
|
+
category?: string;
|
|
3594
|
+
fan_count?: number;
|
|
3595
|
+
}>;
|
|
3596
|
+
selectedPageId?: string;
|
|
3597
|
+
cached?: boolean;
|
|
3598
|
+
});
|
|
3599
|
+
|
|
3600
|
+
export type GetFacebookPagesError = ({
|
|
3601
|
+
error?: string;
|
|
3602
|
+
} | unknown);
|
|
3603
|
+
|
|
3430
3604
|
export type UpdateFacebookPageData = {
|
|
3431
3605
|
body: {
|
|
3432
3606
|
selectedPageId: string;
|
|
@@ -3709,6 +3883,51 @@ export type UpdatePinterestBoardsError = (unknown | {
|
|
|
3709
3883
|
error?: string;
|
|
3710
3884
|
});
|
|
3711
3885
|
|
|
3886
|
+
export type GetGmbLocationsData = {
|
|
3887
|
+
path: {
|
|
3888
|
+
accountId: string;
|
|
3889
|
+
};
|
|
3890
|
+
};
|
|
3891
|
+
|
|
3892
|
+
export type GetGmbLocationsResponse = ({
|
|
3893
|
+
locations?: Array<{
|
|
3894
|
+
id?: string;
|
|
3895
|
+
name?: string;
|
|
3896
|
+
accountId?: string;
|
|
3897
|
+
accountName?: string;
|
|
3898
|
+
address?: string;
|
|
3899
|
+
category?: string;
|
|
3900
|
+
websiteUrl?: string;
|
|
3901
|
+
}>;
|
|
3902
|
+
selectedLocationId?: string;
|
|
3903
|
+
cached?: boolean;
|
|
3904
|
+
});
|
|
3905
|
+
|
|
3906
|
+
export type GetGmbLocationsError = ({
|
|
3907
|
+
error?: string;
|
|
3908
|
+
} | unknown);
|
|
3909
|
+
|
|
3910
|
+
export type UpdateGmbLocationData = {
|
|
3911
|
+
body: {
|
|
3912
|
+
selectedLocationId: string;
|
|
3913
|
+
};
|
|
3914
|
+
path: {
|
|
3915
|
+
accountId: string;
|
|
3916
|
+
};
|
|
3917
|
+
};
|
|
3918
|
+
|
|
3919
|
+
export type UpdateGmbLocationResponse = ({
|
|
3920
|
+
message?: string;
|
|
3921
|
+
selectedLocation?: {
|
|
3922
|
+
id?: string;
|
|
3923
|
+
name?: string;
|
|
3924
|
+
};
|
|
3925
|
+
});
|
|
3926
|
+
|
|
3927
|
+
export type UpdateGmbLocationError = (unknown | {
|
|
3928
|
+
error?: string;
|
|
3929
|
+
});
|
|
3930
|
+
|
|
3712
3931
|
export type GetRedditSubredditsData = {
|
|
3713
3932
|
path: {
|
|
3714
3933
|
accountId: string;
|
|
@@ -3949,7 +4168,7 @@ export type CreateWebhookSettingsData = {
|
|
|
3949
4168
|
/**
|
|
3950
4169
|
* Events to subscribe to
|
|
3951
4170
|
*/
|
|
3952
|
-
events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected')>;
|
|
4171
|
+
events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'message.received')>;
|
|
3953
4172
|
/**
|
|
3954
4173
|
* Enable or disable webhook delivery
|
|
3955
4174
|
*/
|
|
@@ -3993,7 +4212,7 @@ export type UpdateWebhookSettingsData = {
|
|
|
3993
4212
|
/**
|
|
3994
4213
|
* Events to subscribe to
|
|
3995
4214
|
*/
|
|
3996
|
-
events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected')>;
|
|
4215
|
+
events?: Array<('post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'message.received')>;
|
|
3997
4216
|
/**
|
|
3998
4217
|
* Enable or disable webhook delivery
|
|
3999
4218
|
*/
|
|
@@ -4059,7 +4278,7 @@ export type GetWebhookLogsData = {
|
|
|
4059
4278
|
/**
|
|
4060
4279
|
* Filter by event type
|
|
4061
4280
|
*/
|
|
4062
|
-
event?: 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'webhook.test';
|
|
4281
|
+
event?: 'post.scheduled' | 'post.published' | 'post.failed' | 'post.partial' | 'account.connected' | 'account.disconnected' | 'message.received' | 'webhook.test';
|
|
4063
4282
|
/**
|
|
4064
4283
|
* Maximum number of logs to return (max 100)
|
|
4065
4284
|
*/
|
|
@@ -4176,4 +4395,733 @@ export type GetPostLogsResponse = ({
|
|
|
4176
4395
|
|
|
4177
4396
|
export type GetPostLogsError = ({
|
|
4178
4397
|
error?: string;
|
|
4398
|
+
} | unknown);
|
|
4399
|
+
|
|
4400
|
+
export type ListInboxConversationsData = {
|
|
4401
|
+
query?: {
|
|
4402
|
+
/**
|
|
4403
|
+
* Filter by specific social account ID
|
|
4404
|
+
*/
|
|
4405
|
+
accountId?: string;
|
|
4406
|
+
/**
|
|
4407
|
+
* Pagination cursor for next page
|
|
4408
|
+
*/
|
|
4409
|
+
cursor?: string;
|
|
4410
|
+
/**
|
|
4411
|
+
* Maximum number of conversations to return
|
|
4412
|
+
*/
|
|
4413
|
+
limit?: number;
|
|
4414
|
+
/**
|
|
4415
|
+
* Filter by platform
|
|
4416
|
+
*/
|
|
4417
|
+
platform?: 'facebook' | 'instagram' | 'bluesky' | 'reddit' | 'telegram';
|
|
4418
|
+
/**
|
|
4419
|
+
* Filter by profile ID
|
|
4420
|
+
*/
|
|
4421
|
+
profileId?: string;
|
|
4422
|
+
/**
|
|
4423
|
+
* Sort order by updated time
|
|
4424
|
+
*/
|
|
4425
|
+
sortOrder?: 'asc' | 'desc';
|
|
4426
|
+
/**
|
|
4427
|
+
* Filter by conversation status
|
|
4428
|
+
*/
|
|
4429
|
+
status?: 'active' | 'archived';
|
|
4430
|
+
};
|
|
4431
|
+
};
|
|
4432
|
+
|
|
4433
|
+
export type ListInboxConversationsResponse = ({
|
|
4434
|
+
data?: Array<{
|
|
4435
|
+
id?: string;
|
|
4436
|
+
platform?: string;
|
|
4437
|
+
accountId?: string;
|
|
4438
|
+
accountUsername?: string;
|
|
4439
|
+
participantId?: string;
|
|
4440
|
+
participantName?: string;
|
|
4441
|
+
participantPicture?: (string) | null;
|
|
4442
|
+
lastMessage?: string;
|
|
4443
|
+
updatedTime?: string;
|
|
4444
|
+
status?: 'active' | 'archived';
|
|
4445
|
+
/**
|
|
4446
|
+
* Number of unread messages
|
|
4447
|
+
*/
|
|
4448
|
+
unreadCount?: (number) | null;
|
|
4449
|
+
/**
|
|
4450
|
+
* Direct link to open the conversation on the platform (if available)
|
|
4451
|
+
*/
|
|
4452
|
+
url?: (string) | null;
|
|
4453
|
+
}>;
|
|
4454
|
+
pagination?: {
|
|
4455
|
+
hasMore?: boolean;
|
|
4456
|
+
nextCursor?: (string) | null;
|
|
4457
|
+
};
|
|
4458
|
+
meta?: {
|
|
4459
|
+
accountsQueried?: number;
|
|
4460
|
+
accountsFailed?: number;
|
|
4461
|
+
failedAccounts?: Array<{
|
|
4462
|
+
accountId?: string;
|
|
4463
|
+
accountUsername?: (string) | null;
|
|
4464
|
+
platform?: string;
|
|
4465
|
+
error?: string;
|
|
4466
|
+
/**
|
|
4467
|
+
* Error code if available
|
|
4468
|
+
*/
|
|
4469
|
+
code?: (string) | null;
|
|
4470
|
+
/**
|
|
4471
|
+
* Seconds to wait before retry (rate limits)
|
|
4472
|
+
*/
|
|
4473
|
+
retryAfter?: (number) | null;
|
|
4474
|
+
}>;
|
|
4475
|
+
lastUpdated?: string;
|
|
4476
|
+
};
|
|
4477
|
+
});
|
|
4478
|
+
|
|
4479
|
+
export type ListInboxConversationsError = ({
|
|
4480
|
+
error?: string;
|
|
4481
|
+
} | unknown);
|
|
4482
|
+
|
|
4483
|
+
export type GetInboxConversationData = {
|
|
4484
|
+
path: {
|
|
4485
|
+
conversationId: string;
|
|
4486
|
+
};
|
|
4487
|
+
query: {
|
|
4488
|
+
/**
|
|
4489
|
+
* The social account ID
|
|
4490
|
+
*/
|
|
4491
|
+
accountId: string;
|
|
4492
|
+
};
|
|
4493
|
+
};
|
|
4494
|
+
|
|
4495
|
+
export type GetInboxConversationResponse = ({
|
|
4496
|
+
data?: {
|
|
4497
|
+
id?: string;
|
|
4498
|
+
accountId?: string;
|
|
4499
|
+
accountUsername?: string;
|
|
4500
|
+
platform?: string;
|
|
4501
|
+
status?: 'active' | 'archived';
|
|
4502
|
+
participantName?: string;
|
|
4503
|
+
participantId?: string;
|
|
4504
|
+
lastMessage?: string;
|
|
4505
|
+
lastMessageAt?: string;
|
|
4506
|
+
updatedTime?: string;
|
|
4507
|
+
participants?: Array<{
|
|
4508
|
+
id?: string;
|
|
4509
|
+
name?: string;
|
|
4510
|
+
}>;
|
|
4511
|
+
};
|
|
4512
|
+
});
|
|
4513
|
+
|
|
4514
|
+
export type GetInboxConversationError = ({
|
|
4515
|
+
error?: string;
|
|
4516
|
+
} | unknown);
|
|
4517
|
+
|
|
4518
|
+
export type UpdateInboxConversationData = {
|
|
4519
|
+
body: {
|
|
4520
|
+
/**
|
|
4521
|
+
* Social account ID
|
|
4522
|
+
*/
|
|
4523
|
+
accountId: string;
|
|
4524
|
+
status: 'active' | 'archived';
|
|
4525
|
+
};
|
|
4526
|
+
path: {
|
|
4527
|
+
conversationId: string;
|
|
4528
|
+
};
|
|
4529
|
+
};
|
|
4530
|
+
|
|
4531
|
+
export type UpdateInboxConversationResponse = ({
|
|
4532
|
+
success?: boolean;
|
|
4533
|
+
data?: {
|
|
4534
|
+
id?: string;
|
|
4535
|
+
accountId?: string;
|
|
4536
|
+
status?: 'active' | 'archived';
|
|
4537
|
+
platform?: string;
|
|
4538
|
+
updatedAt?: string;
|
|
4539
|
+
};
|
|
4540
|
+
});
|
|
4541
|
+
|
|
4542
|
+
export type UpdateInboxConversationError = ({
|
|
4543
|
+
error?: string;
|
|
4544
|
+
} | unknown);
|
|
4545
|
+
|
|
4546
|
+
export type GetInboxConversationMessagesData = {
|
|
4547
|
+
path: {
|
|
4548
|
+
conversationId: string;
|
|
4549
|
+
};
|
|
4550
|
+
query: {
|
|
4551
|
+
/**
|
|
4552
|
+
* Social account ID
|
|
4553
|
+
*/
|
|
4554
|
+
accountId: string;
|
|
4555
|
+
};
|
|
4556
|
+
};
|
|
4557
|
+
|
|
4558
|
+
export type GetInboxConversationMessagesResponse = ({
|
|
4559
|
+
status?: string;
|
|
4560
|
+
messages?: Array<{
|
|
4561
|
+
id?: string;
|
|
4562
|
+
conversationId?: string;
|
|
4563
|
+
accountId?: string;
|
|
4564
|
+
platform?: string;
|
|
4565
|
+
message?: string;
|
|
4566
|
+
senderId?: string;
|
|
4567
|
+
senderName?: (string) | null;
|
|
4568
|
+
direction?: 'incoming' | 'outgoing';
|
|
4569
|
+
createdAt?: string;
|
|
4570
|
+
attachments?: Array<{
|
|
4571
|
+
id?: string;
|
|
4572
|
+
type?: 'image' | 'video' | 'audio' | 'file' | 'sticker' | 'share';
|
|
4573
|
+
url?: string;
|
|
4574
|
+
filename?: (string) | null;
|
|
4575
|
+
previewUrl?: (string) | null;
|
|
4576
|
+
}>;
|
|
4577
|
+
/**
|
|
4578
|
+
* Reddit message subject
|
|
4579
|
+
*/
|
|
4580
|
+
subject?: (string) | null;
|
|
4581
|
+
/**
|
|
4582
|
+
* Instagram story reply
|
|
4583
|
+
*/
|
|
4584
|
+
storyReply?: (boolean) | null;
|
|
4585
|
+
/**
|
|
4586
|
+
* Instagram story mention
|
|
4587
|
+
*/
|
|
4588
|
+
isStoryMention?: (boolean) | null;
|
|
4589
|
+
}>;
|
|
4590
|
+
lastUpdated?: string;
|
|
4591
|
+
});
|
|
4592
|
+
|
|
4593
|
+
export type GetInboxConversationMessagesError = ({
|
|
4594
|
+
error?: string;
|
|
4595
|
+
} | unknown);
|
|
4596
|
+
|
|
4597
|
+
export type SendInboxMessageData = {
|
|
4598
|
+
body: {
|
|
4599
|
+
/**
|
|
4600
|
+
* Social account ID
|
|
4601
|
+
*/
|
|
4602
|
+
accountId: string;
|
|
4603
|
+
/**
|
|
4604
|
+
* Message text
|
|
4605
|
+
*/
|
|
4606
|
+
message: string;
|
|
4607
|
+
};
|
|
4608
|
+
path: {
|
|
4609
|
+
conversationId: string;
|
|
4610
|
+
};
|
|
4611
|
+
};
|
|
4612
|
+
|
|
4613
|
+
export type SendInboxMessageResponse = ({
|
|
4614
|
+
success?: boolean;
|
|
4615
|
+
data?: {
|
|
4616
|
+
/**
|
|
4617
|
+
* ID of the sent message (not returned for Reddit)
|
|
4618
|
+
*/
|
|
4619
|
+
messageId?: string;
|
|
4620
|
+
/**
|
|
4621
|
+
* Twitter conversation ID
|
|
4622
|
+
*/
|
|
4623
|
+
conversationId?: (string) | null;
|
|
4624
|
+
/**
|
|
4625
|
+
* Bluesky sent timestamp
|
|
4626
|
+
*/
|
|
4627
|
+
sentAt?: (string) | null;
|
|
4628
|
+
/**
|
|
4629
|
+
* Success message (Reddit only)
|
|
4630
|
+
*/
|
|
4631
|
+
message?: (string) | null;
|
|
4632
|
+
};
|
|
4633
|
+
});
|
|
4634
|
+
|
|
4635
|
+
export type SendInboxMessageError = ({
|
|
4636
|
+
error?: string;
|
|
4637
|
+
code?: 'PLATFORM_LIMITATION';
|
|
4638
|
+
} | {
|
|
4639
|
+
error?: string;
|
|
4640
|
+
} | unknown);
|
|
4641
|
+
|
|
4642
|
+
export type ListInboxCommentsData = {
|
|
4643
|
+
query?: {
|
|
4644
|
+
/**
|
|
4645
|
+
* Filter by specific social account ID
|
|
4646
|
+
*/
|
|
4647
|
+
accountId?: string;
|
|
4648
|
+
cursor?: string;
|
|
4649
|
+
limit?: number;
|
|
4650
|
+
/**
|
|
4651
|
+
* Minimum comment count
|
|
4652
|
+
*/
|
|
4653
|
+
minComments?: number;
|
|
4654
|
+
/**
|
|
4655
|
+
* Filter by platform
|
|
4656
|
+
*/
|
|
4657
|
+
platform?: 'facebook' | 'instagram' | 'youtube' | 'linkedin' | 'reddit' | 'bluesky' | 'tiktok';
|
|
4658
|
+
/**
|
|
4659
|
+
* Filter by profile ID
|
|
4660
|
+
*/
|
|
4661
|
+
profileId?: string;
|
|
4662
|
+
/**
|
|
4663
|
+
* Posts created after this date
|
|
4664
|
+
*/
|
|
4665
|
+
since?: string;
|
|
4666
|
+
/**
|
|
4667
|
+
* Sort field
|
|
4668
|
+
*/
|
|
4669
|
+
sortBy?: 'date' | 'comments';
|
|
4670
|
+
/**
|
|
4671
|
+
* Sort order
|
|
4672
|
+
*/
|
|
4673
|
+
sortOrder?: 'asc' | 'desc';
|
|
4674
|
+
};
|
|
4675
|
+
};
|
|
4676
|
+
|
|
4677
|
+
export type ListInboxCommentsResponse = ({
|
|
4678
|
+
data?: Array<{
|
|
4679
|
+
id?: string;
|
|
4680
|
+
platform?: string;
|
|
4681
|
+
accountId?: string;
|
|
4682
|
+
accountUsername?: string;
|
|
4683
|
+
content?: string;
|
|
4684
|
+
picture?: (string) | null;
|
|
4685
|
+
permalink?: (string) | null;
|
|
4686
|
+
createdTime?: string;
|
|
4687
|
+
commentCount?: number;
|
|
4688
|
+
likeCount?: number;
|
|
4689
|
+
/**
|
|
4690
|
+
* Bluesky content identifier
|
|
4691
|
+
*/
|
|
4692
|
+
cid?: (string) | null;
|
|
4693
|
+
/**
|
|
4694
|
+
* Reddit subreddit name
|
|
4695
|
+
*/
|
|
4696
|
+
subreddit?: (string) | null;
|
|
4697
|
+
}>;
|
|
4698
|
+
pagination?: {
|
|
4699
|
+
hasMore?: boolean;
|
|
4700
|
+
nextCursor?: (string) | null;
|
|
4701
|
+
};
|
|
4702
|
+
meta?: {
|
|
4703
|
+
accountsQueried?: number;
|
|
4704
|
+
accountsFailed?: number;
|
|
4705
|
+
failedAccounts?: Array<{
|
|
4706
|
+
accountId?: string;
|
|
4707
|
+
accountUsername?: (string) | null;
|
|
4708
|
+
platform?: string;
|
|
4709
|
+
error?: string;
|
|
4710
|
+
/**
|
|
4711
|
+
* Error code if available
|
|
4712
|
+
*/
|
|
4713
|
+
code?: (string) | null;
|
|
4714
|
+
/**
|
|
4715
|
+
* Seconds to wait before retry (rate limits)
|
|
4716
|
+
*/
|
|
4717
|
+
retryAfter?: (number) | null;
|
|
4718
|
+
}>;
|
|
4719
|
+
lastUpdated?: string;
|
|
4720
|
+
};
|
|
4721
|
+
});
|
|
4722
|
+
|
|
4723
|
+
export type ListInboxCommentsError = ({
|
|
4724
|
+
error?: string;
|
|
4725
|
+
} | unknown);
|
|
4726
|
+
|
|
4727
|
+
export type GetInboxPostCommentsData = {
|
|
4728
|
+
path: {
|
|
4729
|
+
postId: string;
|
|
4730
|
+
};
|
|
4731
|
+
query: {
|
|
4732
|
+
accountId: string;
|
|
4733
|
+
/**
|
|
4734
|
+
* (Reddit only) Get replies to a specific comment
|
|
4735
|
+
*/
|
|
4736
|
+
commentId?: string;
|
|
4737
|
+
/**
|
|
4738
|
+
* Pagination cursor
|
|
4739
|
+
*/
|
|
4740
|
+
cursor?: string;
|
|
4741
|
+
/**
|
|
4742
|
+
* Maximum number of comments to return
|
|
4743
|
+
*/
|
|
4744
|
+
limit?: number;
|
|
4745
|
+
/**
|
|
4746
|
+
* (Reddit only) Subreddit name
|
|
4747
|
+
*/
|
|
4748
|
+
subreddit?: string;
|
|
4749
|
+
};
|
|
4750
|
+
};
|
|
4751
|
+
|
|
4752
|
+
export type GetInboxPostCommentsResponse = ({
|
|
4753
|
+
status?: string;
|
|
4754
|
+
comments?: Array<{
|
|
4755
|
+
id?: string;
|
|
4756
|
+
message?: string;
|
|
4757
|
+
createdTime?: string;
|
|
4758
|
+
from?: {
|
|
4759
|
+
id?: string;
|
|
4760
|
+
name?: string;
|
|
4761
|
+
username?: string;
|
|
4762
|
+
picture?: (string) | null;
|
|
4763
|
+
isOwner?: boolean;
|
|
4764
|
+
};
|
|
4765
|
+
likeCount?: number;
|
|
4766
|
+
replyCount?: number;
|
|
4767
|
+
/**
|
|
4768
|
+
* The platform this comment is from
|
|
4769
|
+
*/
|
|
4770
|
+
platform?: string;
|
|
4771
|
+
/**
|
|
4772
|
+
* Direct link to the comment on the platform (if available)
|
|
4773
|
+
*/
|
|
4774
|
+
url?: (string) | null;
|
|
4775
|
+
replies?: Array<{
|
|
4776
|
+
[key: string]: unknown;
|
|
4777
|
+
}>;
|
|
4778
|
+
canReply?: boolean;
|
|
4779
|
+
canDelete?: boolean;
|
|
4780
|
+
/**
|
|
4781
|
+
* Whether this comment can be hidden (Facebook
|
|
4782
|
+
*/
|
|
4783
|
+
canHide?: boolean;
|
|
4784
|
+
/**
|
|
4785
|
+
* Whether this comment can be liked (Facebook
|
|
4786
|
+
*/
|
|
4787
|
+
canLike?: boolean;
|
|
4788
|
+
/**
|
|
4789
|
+
* Whether the comment is currently hidden
|
|
4790
|
+
*/
|
|
4791
|
+
isHidden?: boolean;
|
|
4792
|
+
/**
|
|
4793
|
+
* Whether the current user has liked this comment
|
|
4794
|
+
*/
|
|
4795
|
+
isLiked?: boolean;
|
|
4796
|
+
/**
|
|
4797
|
+
* Bluesky like URI for unliking
|
|
4798
|
+
*/
|
|
4799
|
+
likeUri?: (string) | null;
|
|
4800
|
+
/**
|
|
4801
|
+
* Bluesky content identifier
|
|
4802
|
+
*/
|
|
4803
|
+
cid?: (string) | null;
|
|
4804
|
+
/**
|
|
4805
|
+
* Parent comment ID for nested replies
|
|
4806
|
+
*/
|
|
4807
|
+
parentId?: (string) | null;
|
|
4808
|
+
/**
|
|
4809
|
+
* Bluesky root post URI
|
|
4810
|
+
*/
|
|
4811
|
+
rootUri?: (string) | null;
|
|
4812
|
+
/**
|
|
4813
|
+
* Bluesky root post CID
|
|
4814
|
+
*/
|
|
4815
|
+
rootCid?: (string) | null;
|
|
4816
|
+
}>;
|
|
4817
|
+
pagination?: {
|
|
4818
|
+
hasMore?: boolean;
|
|
4819
|
+
cursor?: (string) | null;
|
|
4820
|
+
};
|
|
4821
|
+
meta?: {
|
|
4822
|
+
platform?: string;
|
|
4823
|
+
postId?: string;
|
|
4824
|
+
accountId?: string;
|
|
4825
|
+
/**
|
|
4826
|
+
* (Reddit only) Subreddit name
|
|
4827
|
+
*/
|
|
4828
|
+
subreddit?: (string) | null;
|
|
4829
|
+
lastUpdated?: string;
|
|
4830
|
+
};
|
|
4831
|
+
});
|
|
4832
|
+
|
|
4833
|
+
export type GetInboxPostCommentsError = ({
|
|
4834
|
+
error?: string;
|
|
4835
|
+
} | unknown);
|
|
4836
|
+
|
|
4837
|
+
export type ReplyToInboxPostData = {
|
|
4838
|
+
body: {
|
|
4839
|
+
accountId: string;
|
|
4840
|
+
message: string;
|
|
4841
|
+
/**
|
|
4842
|
+
* Reply to specific comment (optional)
|
|
4843
|
+
*/
|
|
4844
|
+
commentId?: string;
|
|
4845
|
+
/**
|
|
4846
|
+
* (Reddit only) Subreddit name for replies
|
|
4847
|
+
*/
|
|
4848
|
+
subreddit?: string;
|
|
4849
|
+
/**
|
|
4850
|
+
* (Bluesky only) Parent content identifier
|
|
4851
|
+
*/
|
|
4852
|
+
parentCid?: string;
|
|
4853
|
+
/**
|
|
4854
|
+
* (Bluesky only) Root post URI
|
|
4855
|
+
*/
|
|
4856
|
+
rootUri?: string;
|
|
4857
|
+
/**
|
|
4858
|
+
* (Bluesky only) Root post CID
|
|
4859
|
+
*/
|
|
4860
|
+
rootCid?: string;
|
|
4861
|
+
};
|
|
4862
|
+
path: {
|
|
4863
|
+
postId: string;
|
|
4864
|
+
};
|
|
4865
|
+
};
|
|
4866
|
+
|
|
4867
|
+
export type ReplyToInboxPostResponse = ({
|
|
4868
|
+
success?: boolean;
|
|
4869
|
+
data?: {
|
|
4870
|
+
commentId?: string;
|
|
4871
|
+
isReply?: boolean;
|
|
4872
|
+
/**
|
|
4873
|
+
* Bluesky CID
|
|
4874
|
+
*/
|
|
4875
|
+
cid?: (string) | null;
|
|
4876
|
+
};
|
|
4877
|
+
});
|
|
4878
|
+
|
|
4879
|
+
export type ReplyToInboxPostError = ({
|
|
4880
|
+
error?: string;
|
|
4881
|
+
} | unknown);
|
|
4882
|
+
|
|
4883
|
+
export type DeleteInboxCommentData = {
|
|
4884
|
+
path: {
|
|
4885
|
+
postId: string;
|
|
4886
|
+
};
|
|
4887
|
+
query: {
|
|
4888
|
+
accountId: string;
|
|
4889
|
+
commentId: string;
|
|
4890
|
+
};
|
|
4891
|
+
};
|
|
4892
|
+
|
|
4893
|
+
export type DeleteInboxCommentResponse = ({
|
|
4894
|
+
success?: boolean;
|
|
4895
|
+
data?: {
|
|
4896
|
+
message?: string;
|
|
4897
|
+
};
|
|
4898
|
+
});
|
|
4899
|
+
|
|
4900
|
+
export type DeleteInboxCommentError = ({
|
|
4901
|
+
error?: string;
|
|
4902
|
+
} | unknown);
|
|
4903
|
+
|
|
4904
|
+
export type HideInboxCommentData = {
|
|
4905
|
+
body: {
|
|
4906
|
+
/**
|
|
4907
|
+
* The social account ID
|
|
4908
|
+
*/
|
|
4909
|
+
accountId: string;
|
|
4910
|
+
};
|
|
4911
|
+
path: {
|
|
4912
|
+
commentId: string;
|
|
4913
|
+
postId: string;
|
|
4914
|
+
};
|
|
4915
|
+
};
|
|
4916
|
+
|
|
4917
|
+
export type HideInboxCommentResponse = ({
|
|
4918
|
+
status?: string;
|
|
4919
|
+
commentId?: string;
|
|
4920
|
+
hidden?: boolean;
|
|
4921
|
+
platform?: string;
|
|
4922
|
+
});
|
|
4923
|
+
|
|
4924
|
+
export type HideInboxCommentError = (unknown | {
|
|
4925
|
+
error?: string;
|
|
4926
|
+
});
|
|
4927
|
+
|
|
4928
|
+
export type UnhideInboxCommentData = {
|
|
4929
|
+
path: {
|
|
4930
|
+
commentId: string;
|
|
4931
|
+
postId: string;
|
|
4932
|
+
};
|
|
4933
|
+
query: {
|
|
4934
|
+
accountId: string;
|
|
4935
|
+
};
|
|
4936
|
+
};
|
|
4937
|
+
|
|
4938
|
+
export type UnhideInboxCommentResponse = ({
|
|
4939
|
+
status?: string;
|
|
4940
|
+
commentId?: string;
|
|
4941
|
+
hidden?: boolean;
|
|
4942
|
+
platform?: string;
|
|
4943
|
+
});
|
|
4944
|
+
|
|
4945
|
+
export type UnhideInboxCommentError = (unknown | {
|
|
4946
|
+
error?: string;
|
|
4947
|
+
});
|
|
4948
|
+
|
|
4949
|
+
export type LikeInboxCommentData = {
|
|
4950
|
+
body: {
|
|
4951
|
+
/**
|
|
4952
|
+
* The social account ID
|
|
4953
|
+
*/
|
|
4954
|
+
accountId: string;
|
|
4955
|
+
/**
|
|
4956
|
+
* (Bluesky only) Content identifier for the comment
|
|
4957
|
+
*/
|
|
4958
|
+
cid?: string;
|
|
4959
|
+
};
|
|
4960
|
+
path: {
|
|
4961
|
+
commentId: string;
|
|
4962
|
+
postId: string;
|
|
4963
|
+
};
|
|
4964
|
+
};
|
|
4965
|
+
|
|
4966
|
+
export type LikeInboxCommentResponse = ({
|
|
4967
|
+
status?: string;
|
|
4968
|
+
commentId?: string;
|
|
4969
|
+
liked?: boolean;
|
|
4970
|
+
/**
|
|
4971
|
+
* (Bluesky only) URI to use for unliking
|
|
4972
|
+
*/
|
|
4973
|
+
likeUri?: string;
|
|
4974
|
+
platform?: string;
|
|
4975
|
+
});
|
|
4976
|
+
|
|
4977
|
+
export type LikeInboxCommentError = (unknown | {
|
|
4978
|
+
error?: string;
|
|
4979
|
+
});
|
|
4980
|
+
|
|
4981
|
+
export type UnlikeInboxCommentData = {
|
|
4982
|
+
path: {
|
|
4983
|
+
commentId: string;
|
|
4984
|
+
postId: string;
|
|
4985
|
+
};
|
|
4986
|
+
query: {
|
|
4987
|
+
accountId: string;
|
|
4988
|
+
/**
|
|
4989
|
+
* (Bluesky only) The like URI returned when liking
|
|
4990
|
+
*/
|
|
4991
|
+
likeUri?: string;
|
|
4992
|
+
};
|
|
4993
|
+
};
|
|
4994
|
+
|
|
4995
|
+
export type UnlikeInboxCommentResponse = ({
|
|
4996
|
+
status?: string;
|
|
4997
|
+
commentId?: string;
|
|
4998
|
+
liked?: boolean;
|
|
4999
|
+
platform?: string;
|
|
5000
|
+
});
|
|
5001
|
+
|
|
5002
|
+
export type UnlikeInboxCommentError = (unknown | {
|
|
5003
|
+
error?: string;
|
|
5004
|
+
});
|
|
5005
|
+
|
|
5006
|
+
export type ListInboxReviewsData = {
|
|
5007
|
+
query?: {
|
|
5008
|
+
/**
|
|
5009
|
+
* Filter by specific social account ID
|
|
5010
|
+
*/
|
|
5011
|
+
accountId?: string;
|
|
5012
|
+
cursor?: string;
|
|
5013
|
+
/**
|
|
5014
|
+
* Filter by reply status
|
|
5015
|
+
*/
|
|
5016
|
+
hasReply?: boolean;
|
|
5017
|
+
limit?: number;
|
|
5018
|
+
maxRating?: number;
|
|
5019
|
+
minRating?: number;
|
|
5020
|
+
platform?: 'facebook' | 'googlebusiness';
|
|
5021
|
+
profileId?: string;
|
|
5022
|
+
sortBy?: 'date' | 'rating';
|
|
5023
|
+
sortOrder?: 'asc' | 'desc';
|
|
5024
|
+
};
|
|
5025
|
+
};
|
|
5026
|
+
|
|
5027
|
+
export type ListInboxReviewsResponse = ({
|
|
5028
|
+
status?: string;
|
|
5029
|
+
data?: Array<{
|
|
5030
|
+
id?: string;
|
|
5031
|
+
platform?: string;
|
|
5032
|
+
accountId?: string;
|
|
5033
|
+
accountUsername?: string;
|
|
5034
|
+
reviewer?: {
|
|
5035
|
+
id?: (string) | null;
|
|
5036
|
+
name?: string;
|
|
5037
|
+
profileImage?: (string) | null;
|
|
5038
|
+
};
|
|
5039
|
+
rating?: number;
|
|
5040
|
+
text?: string;
|
|
5041
|
+
created?: string;
|
|
5042
|
+
hasReply?: boolean;
|
|
5043
|
+
reply?: {
|
|
5044
|
+
id?: string;
|
|
5045
|
+
text?: string;
|
|
5046
|
+
created?: string;
|
|
5047
|
+
} | null;
|
|
5048
|
+
reviewUrl?: (string) | null;
|
|
5049
|
+
}>;
|
|
5050
|
+
pagination?: {
|
|
5051
|
+
hasMore?: boolean;
|
|
5052
|
+
nextCursor?: (string) | null;
|
|
5053
|
+
};
|
|
5054
|
+
meta?: {
|
|
5055
|
+
accountsQueried?: number;
|
|
5056
|
+
accountsFailed?: number;
|
|
5057
|
+
failedAccounts?: Array<{
|
|
5058
|
+
accountId?: string;
|
|
5059
|
+
accountUsername?: (string) | null;
|
|
5060
|
+
platform?: string;
|
|
5061
|
+
error?: string;
|
|
5062
|
+
/**
|
|
5063
|
+
* Error code if available
|
|
5064
|
+
*/
|
|
5065
|
+
code?: (string) | null;
|
|
5066
|
+
/**
|
|
5067
|
+
* Seconds to wait before retry (rate limits)
|
|
5068
|
+
*/
|
|
5069
|
+
retryAfter?: (number) | null;
|
|
5070
|
+
}>;
|
|
5071
|
+
lastUpdated?: string;
|
|
5072
|
+
};
|
|
5073
|
+
summary?: {
|
|
5074
|
+
totalReviews?: number;
|
|
5075
|
+
averageRating?: (number) | null;
|
|
5076
|
+
};
|
|
5077
|
+
});
|
|
5078
|
+
|
|
5079
|
+
export type ListInboxReviewsError = ({
|
|
5080
|
+
error?: string;
|
|
5081
|
+
} | unknown);
|
|
5082
|
+
|
|
5083
|
+
export type ReplyToInboxReviewData = {
|
|
5084
|
+
body: {
|
|
5085
|
+
accountId: string;
|
|
5086
|
+
message: string;
|
|
5087
|
+
};
|
|
5088
|
+
path: {
|
|
5089
|
+
/**
|
|
5090
|
+
* Review ID (URL-encoded for Google Business)
|
|
5091
|
+
*/
|
|
5092
|
+
reviewId: string;
|
|
5093
|
+
};
|
|
5094
|
+
};
|
|
5095
|
+
|
|
5096
|
+
export type ReplyToInboxReviewResponse = ({
|
|
5097
|
+
status?: string;
|
|
5098
|
+
reply?: {
|
|
5099
|
+
id?: string;
|
|
5100
|
+
text?: string;
|
|
5101
|
+
created?: string;
|
|
5102
|
+
};
|
|
5103
|
+
platform?: string;
|
|
5104
|
+
});
|
|
5105
|
+
|
|
5106
|
+
export type ReplyToInboxReviewError = ({
|
|
5107
|
+
error?: string;
|
|
5108
|
+
} | unknown);
|
|
5109
|
+
|
|
5110
|
+
export type DeleteInboxReviewReplyData = {
|
|
5111
|
+
body: {
|
|
5112
|
+
accountId: string;
|
|
5113
|
+
};
|
|
5114
|
+
path: {
|
|
5115
|
+
reviewId: string;
|
|
5116
|
+
};
|
|
5117
|
+
};
|
|
5118
|
+
|
|
5119
|
+
export type DeleteInboxReviewReplyResponse = ({
|
|
5120
|
+
status?: string;
|
|
5121
|
+
message?: string;
|
|
5122
|
+
platform?: string;
|
|
5123
|
+
});
|
|
5124
|
+
|
|
5125
|
+
export type DeleteInboxReviewReplyError = ({
|
|
5126
|
+
error?: string;
|
|
4179
5127
|
} | unknown);
|