@homespot-sdk/core 0.0.358 → 0.0.359
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/property/index.d.ts +2 -2
- package/dist/property/index.d.ts.map +1 -1
- package/dist/property/index.js +1 -1
- package/dist/property/index.js.map +1 -1
- package/dist/property/schemas.gen.d.ts +92 -0
- package/dist/property/schemas.gen.d.ts.map +1 -1
- package/dist/property/schemas.gen.js +99 -0
- package/dist/property/schemas.gen.js.map +1 -1
- package/dist/property/sdk.gen.d.ts +6 -2
- package/dist/property/sdk.gen.d.ts.map +1 -1
- package/dist/property/sdk.gen.js +34 -2
- package/dist/property/sdk.gen.js.map +1 -1
- package/dist/property/transformers.gen.d.ts +5 -1
- package/dist/property/transformers.gen.d.ts.map +1 -1
- package/dist/property/transformers.gen.js +40 -0
- package/dist/property/transformers.gen.js.map +1 -1
- package/dist/property/types.gen.d.ts +86 -0
- package/dist/property/types.gen.d.ts.map +1 -1
- package/dist/property/zod.gen.d.ts +271 -6
- package/dist/property/zod.gen.d.ts.map +1 -1
- package/dist/property/zod.gen.js +98 -0
- package/dist/property/zod.gen.js.map +1 -1
- package/dist/rem/index.d.ts +2 -2
- package/dist/rem/index.d.ts.map +1 -1
- package/dist/rem/index.js +1 -1
- package/dist/rem/index.js.map +1 -1
- package/dist/rem/schemas.gen.d.ts +453 -6
- package/dist/rem/schemas.gen.d.ts.map +1 -1
- package/dist/rem/schemas.gen.js +499 -2
- package/dist/rem/schemas.gen.js.map +1 -1
- package/dist/rem/sdk.gen.d.ts +7 -2
- package/dist/rem/sdk.gen.d.ts.map +1 -1
- package/dist/rem/sdk.gen.js +38 -2
- package/dist/rem/sdk.gen.js.map +1 -1
- package/dist/rem/transformers.gen.d.ts +4 -1
- package/dist/rem/transformers.gen.d.ts.map +1 -1
- package/dist/rem/transformers.gen.js +33 -0
- package/dist/rem/transformers.gen.js.map +1 -1
- package/dist/rem/types.gen.d.ts +288 -4
- package/dist/rem/types.gen.d.ts.map +1 -1
- package/dist/rem/zod.gen.d.ts +961 -74
- package/dist/rem/zod.gen.d.ts.map +1 -1
- package/dist/rem/zod.gen.js +401 -1
- package/dist/rem/zod.gen.js.map +1 -1
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/schemas.gen.d.ts +72 -0
- package/dist/utils/schemas.gen.d.ts.map +1 -1
- package/dist/utils/schemas.gen.js +72 -0
- package/dist/utils/schemas.gen.js.map +1 -1
- package/dist/utils/sdk.gen.d.ts +10 -1
- package/dist/utils/sdk.gen.d.ts.map +1 -1
- package/dist/utils/sdk.gen.js +9 -0
- package/dist/utils/sdk.gen.js.map +1 -1
- package/dist/utils/types.gen.d.ts +73 -0
- package/dist/utils/types.gen.d.ts.map +1 -1
- package/dist/utils/zod.gen.d.ts +157 -0
- package/dist/utils/zod.gen.d.ts.map +1 -1
- package/dist/utils/zod.gen.js +122 -0
- package/dist/utils/zod.gen.js.map +1 -1
- package/package.json +1 -1
package/dist/rem/schemas.gen.js
CHANGED
|
@@ -1157,11 +1157,33 @@ export const OauthConnectionResponseSchema = {
|
|
|
1157
1157
|
type: 'string',
|
|
1158
1158
|
format: 'date-time',
|
|
1159
1159
|
},
|
|
1160
|
+
canPublish: {
|
|
1161
|
+
type: 'boolean',
|
|
1162
|
+
},
|
|
1163
|
+
canReadComments: {
|
|
1164
|
+
type: 'boolean',
|
|
1165
|
+
},
|
|
1166
|
+
canReply: {
|
|
1167
|
+
type: 'boolean',
|
|
1168
|
+
},
|
|
1169
|
+
canReadStats: {
|
|
1170
|
+
type: 'boolean',
|
|
1171
|
+
description: 'Like and comment counts on a post',
|
|
1172
|
+
},
|
|
1173
|
+
reconnectRequired: {
|
|
1174
|
+
type: 'boolean',
|
|
1175
|
+
description: 'The token is dead, or the grant lacks a scope the connect flow asks for — re-running the connect flow is what fixes it',
|
|
1176
|
+
},
|
|
1160
1177
|
},
|
|
1161
1178
|
required: [
|
|
1162
1179
|
'agencyId',
|
|
1180
|
+
'canPublish',
|
|
1181
|
+
'canReadComments',
|
|
1182
|
+
'canReadStats',
|
|
1183
|
+
'canReply',
|
|
1163
1184
|
'createdAt',
|
|
1164
1185
|
'provider',
|
|
1186
|
+
'reconnectRequired',
|
|
1165
1187
|
'status',
|
|
1166
1188
|
'updatedAt',
|
|
1167
1189
|
'userId',
|
|
@@ -1600,6 +1622,172 @@ export const PercentageSchema = {
|
|
|
1600
1622
|
],
|
|
1601
1623
|
required: ['rate'],
|
|
1602
1624
|
};
|
|
1625
|
+
export const FocusRequestSchema = {
|
|
1626
|
+
type: 'object',
|
|
1627
|
+
properties: {
|
|
1628
|
+
x: {
|
|
1629
|
+
type: 'number',
|
|
1630
|
+
format: 'double',
|
|
1631
|
+
},
|
|
1632
|
+
y: {
|
|
1633
|
+
type: 'number',
|
|
1634
|
+
format: 'double',
|
|
1635
|
+
},
|
|
1636
|
+
},
|
|
1637
|
+
required: ['x', 'y'],
|
|
1638
|
+
};
|
|
1639
|
+
export const PhotoSchema = {
|
|
1640
|
+
type: 'object',
|
|
1641
|
+
properties: {
|
|
1642
|
+
photoId: {
|
|
1643
|
+
type: 'integer',
|
|
1644
|
+
format: 'int64',
|
|
1645
|
+
},
|
|
1646
|
+
mode: {
|
|
1647
|
+
type: 'string',
|
|
1648
|
+
enum: ['AUTO', 'CROP', 'FIT'],
|
|
1649
|
+
},
|
|
1650
|
+
focus: {
|
|
1651
|
+
$ref: '#/components/schemas/FocusRequest',
|
|
1652
|
+
},
|
|
1653
|
+
},
|
|
1654
|
+
required: ['photoId'],
|
|
1655
|
+
};
|
|
1656
|
+
export const PublishSocialPostRequestSchema = {
|
|
1657
|
+
type: 'object',
|
|
1658
|
+
properties: {
|
|
1659
|
+
channel: {
|
|
1660
|
+
type: 'string',
|
|
1661
|
+
enum: ['FACEBOOK', 'INSTAGRAM'],
|
|
1662
|
+
},
|
|
1663
|
+
caption: {
|
|
1664
|
+
type: 'string',
|
|
1665
|
+
},
|
|
1666
|
+
ratio: {
|
|
1667
|
+
type: 'string',
|
|
1668
|
+
description: 'Instagram only; defaults to LANDSCAPE',
|
|
1669
|
+
enum: ['LANDSCAPE', 'SQUARE', 'PORTRAIT'],
|
|
1670
|
+
},
|
|
1671
|
+
photos: {
|
|
1672
|
+
type: 'array',
|
|
1673
|
+
description: 'In post order',
|
|
1674
|
+
items: {
|
|
1675
|
+
$ref: '#/components/schemas/Photo',
|
|
1676
|
+
},
|
|
1677
|
+
},
|
|
1678
|
+
templateId: {
|
|
1679
|
+
type: 'string',
|
|
1680
|
+
format: 'uuid',
|
|
1681
|
+
},
|
|
1682
|
+
},
|
|
1683
|
+
required: ['caption', 'channel', 'photos'],
|
|
1684
|
+
};
|
|
1685
|
+
export const FocusViewSchema = {
|
|
1686
|
+
type: 'object',
|
|
1687
|
+
properties: {
|
|
1688
|
+
x: {
|
|
1689
|
+
type: 'number',
|
|
1690
|
+
format: 'double',
|
|
1691
|
+
},
|
|
1692
|
+
y: {
|
|
1693
|
+
type: 'number',
|
|
1694
|
+
format: 'double',
|
|
1695
|
+
},
|
|
1696
|
+
},
|
|
1697
|
+
required: ['x', 'y'],
|
|
1698
|
+
};
|
|
1699
|
+
export const PhotoViewSchema = {
|
|
1700
|
+
type: 'object',
|
|
1701
|
+
properties: {
|
|
1702
|
+
photoId: {
|
|
1703
|
+
type: 'integer',
|
|
1704
|
+
format: 'int64',
|
|
1705
|
+
},
|
|
1706
|
+
mode: {
|
|
1707
|
+
type: 'string',
|
|
1708
|
+
enum: ['AUTO', 'CROP', 'FIT'],
|
|
1709
|
+
},
|
|
1710
|
+
focus: {
|
|
1711
|
+
$ref: '#/components/schemas/FocusView',
|
|
1712
|
+
},
|
|
1713
|
+
},
|
|
1714
|
+
required: ['focus', 'mode', 'photoId'],
|
|
1715
|
+
};
|
|
1716
|
+
export const SocialPostViewSchema = {
|
|
1717
|
+
type: 'object',
|
|
1718
|
+
properties: {
|
|
1719
|
+
id: {
|
|
1720
|
+
type: 'string',
|
|
1721
|
+
format: 'uuid',
|
|
1722
|
+
},
|
|
1723
|
+
channel: {
|
|
1724
|
+
type: 'string',
|
|
1725
|
+
enum: ['FACEBOOK', 'INSTAGRAM'],
|
|
1726
|
+
},
|
|
1727
|
+
status: {
|
|
1728
|
+
type: 'string',
|
|
1729
|
+
enum: ['PUBLISHING', 'PUBLISHED', 'FAILED', 'REMOVED'],
|
|
1730
|
+
},
|
|
1731
|
+
caption: {
|
|
1732
|
+
type: 'string',
|
|
1733
|
+
},
|
|
1734
|
+
ratio: {
|
|
1735
|
+
type: 'string',
|
|
1736
|
+
description: 'Instagram only',
|
|
1737
|
+
enum: ['LANDSCAPE', 'SQUARE', 'PORTRAIT'],
|
|
1738
|
+
},
|
|
1739
|
+
photos: {
|
|
1740
|
+
type: 'array',
|
|
1741
|
+
items: {
|
|
1742
|
+
$ref: '#/components/schemas/PhotoView',
|
|
1743
|
+
},
|
|
1744
|
+
},
|
|
1745
|
+
templateId: {
|
|
1746
|
+
type: 'string',
|
|
1747
|
+
format: 'uuid',
|
|
1748
|
+
},
|
|
1749
|
+
failureReason: {
|
|
1750
|
+
type: 'string',
|
|
1751
|
+
enum: [
|
|
1752
|
+
'RECONNECT_REQUIRED',
|
|
1753
|
+
'PERMISSION_MISSING',
|
|
1754
|
+
'PAGE_PUBLISHING_AUTHORIZATION',
|
|
1755
|
+
'RATE_LIMITED',
|
|
1756
|
+
'BAD_MEDIA',
|
|
1757
|
+
'UNCONFIRMED',
|
|
1758
|
+
'UNKNOWN',
|
|
1759
|
+
],
|
|
1760
|
+
},
|
|
1761
|
+
failureDetail: {
|
|
1762
|
+
type: 'string',
|
|
1763
|
+
},
|
|
1764
|
+
permalink: {
|
|
1765
|
+
type: 'string',
|
|
1766
|
+
description: 'The post on Facebook / Instagram, once published',
|
|
1767
|
+
},
|
|
1768
|
+
publishedAt: {
|
|
1769
|
+
type: 'string',
|
|
1770
|
+
format: 'date-time',
|
|
1771
|
+
},
|
|
1772
|
+
createdBy: {
|
|
1773
|
+
type: 'string',
|
|
1774
|
+
format: 'uuid',
|
|
1775
|
+
},
|
|
1776
|
+
createdAt: {
|
|
1777
|
+
type: 'string',
|
|
1778
|
+
format: 'date-time',
|
|
1779
|
+
},
|
|
1780
|
+
},
|
|
1781
|
+
required: [
|
|
1782
|
+
'caption',
|
|
1783
|
+
'channel',
|
|
1784
|
+
'createdAt',
|
|
1785
|
+
'createdBy',
|
|
1786
|
+
'id',
|
|
1787
|
+
'photos',
|
|
1788
|
+
'status',
|
|
1789
|
+
],
|
|
1790
|
+
};
|
|
1603
1791
|
export const CloseListingRequestSchema = {
|
|
1604
1792
|
type: 'object',
|
|
1605
1793
|
properties: {
|
|
@@ -1669,6 +1857,20 @@ export const IdResponseLongSchema = {
|
|
|
1669
1857
|
},
|
|
1670
1858
|
required: ['id'],
|
|
1671
1859
|
};
|
|
1860
|
+
export const ExternalListingWithdrawRequestSchema = {
|
|
1861
|
+
type: 'object',
|
|
1862
|
+
properties: {
|
|
1863
|
+
platform: {
|
|
1864
|
+
type: 'string',
|
|
1865
|
+
enum: ['SS', 'MY_HOME'],
|
|
1866
|
+
},
|
|
1867
|
+
listingId: {
|
|
1868
|
+
type: 'integer',
|
|
1869
|
+
format: 'int64',
|
|
1870
|
+
},
|
|
1871
|
+
},
|
|
1872
|
+
required: ['listingId', 'platform'],
|
|
1873
|
+
};
|
|
1672
1874
|
export const ExternalListingPublishRequestSchema = {
|
|
1673
1875
|
type: 'object',
|
|
1674
1876
|
properties: {
|
|
@@ -4285,7 +4487,14 @@ export const PlatformListingResponseSchema = {
|
|
|
4285
4487
|
},
|
|
4286
4488
|
status: {
|
|
4287
4489
|
type: 'string',
|
|
4288
|
-
enum: [
|
|
4490
|
+
enum: [
|
|
4491
|
+
'PENDING',
|
|
4492
|
+
'SYNDICATED',
|
|
4493
|
+
'FAILED',
|
|
4494
|
+
'EXPIRED',
|
|
4495
|
+
'WITHDRAWING',
|
|
4496
|
+
'WITHDRAWN',
|
|
4497
|
+
],
|
|
4289
4498
|
},
|
|
4290
4499
|
listedAt: {
|
|
4291
4500
|
type: 'string',
|
|
@@ -4299,6 +4508,9 @@ export const PlatformListingResponseSchema = {
|
|
|
4299
4508
|
type: 'string',
|
|
4300
4509
|
format: 'date',
|
|
4301
4510
|
},
|
|
4511
|
+
failureReason: {
|
|
4512
|
+
type: 'string',
|
|
4513
|
+
},
|
|
4302
4514
|
boost: {
|
|
4303
4515
|
$ref: '#/components/schemas/BoostResponse',
|
|
4304
4516
|
},
|
|
@@ -4378,7 +4590,7 @@ export const PropertyListingResponseSchema = {
|
|
|
4378
4590
|
},
|
|
4379
4591
|
isProcessing: {
|
|
4380
4592
|
type: 'boolean',
|
|
4381
|
-
description: 'True while an external-portal placement
|
|
4593
|
+
description: 'True while an external-portal placement, a boost or a social post is in flight — poll the property page until false. Creating the Homespot listing itself is synchronous, so it never sets this.',
|
|
4382
4594
|
},
|
|
4383
4595
|
price: {
|
|
4384
4596
|
type: 'number',
|
|
@@ -4402,6 +4614,13 @@ export const PropertyListingResponseSchema = {
|
|
|
4402
4614
|
$ref: '#/components/schemas/PlatformListingResponse',
|
|
4403
4615
|
},
|
|
4404
4616
|
},
|
|
4617
|
+
socialPosts: {
|
|
4618
|
+
type: 'array',
|
|
4619
|
+
description: 'Facebook / Instagram posts of this listing, newest first',
|
|
4620
|
+
items: {
|
|
4621
|
+
$ref: '#/components/schemas/SocialPostResponse',
|
|
4622
|
+
},
|
|
4623
|
+
},
|
|
4405
4624
|
createdAt: {
|
|
4406
4625
|
type: 'string',
|
|
4407
4626
|
format: 'date-time',
|
|
@@ -4421,6 +4640,7 @@ export const PropertyListingResponseSchema = {
|
|
|
4421
4640
|
'platformListings',
|
|
4422
4641
|
'price',
|
|
4423
4642
|
'publicId',
|
|
4643
|
+
'socialPosts',
|
|
4424
4644
|
],
|
|
4425
4645
|
};
|
|
4426
4646
|
export const PropertyPageResponseSchema = {
|
|
@@ -4510,6 +4730,84 @@ export const PropertyPageResponseSchema = {
|
|
|
4510
4730
|
'updatedAt',
|
|
4511
4731
|
],
|
|
4512
4732
|
};
|
|
4733
|
+
export const SocialPostResponseSchema = {
|
|
4734
|
+
type: 'object',
|
|
4735
|
+
properties: {
|
|
4736
|
+
postId: {
|
|
4737
|
+
type: 'string',
|
|
4738
|
+
format: 'uuid',
|
|
4739
|
+
description: 'For retrying a failed post, or reading it in full',
|
|
4740
|
+
},
|
|
4741
|
+
channel: {
|
|
4742
|
+
type: 'string',
|
|
4743
|
+
enum: ['FACEBOOK', 'INSTAGRAM'],
|
|
4744
|
+
},
|
|
4745
|
+
status: {
|
|
4746
|
+
type: 'string',
|
|
4747
|
+
enum: ['PUBLISHING', 'PUBLISHED', 'FAILED', 'REMOVED'],
|
|
4748
|
+
},
|
|
4749
|
+
caption: {
|
|
4750
|
+
type: 'string',
|
|
4751
|
+
description: 'Exactly as published',
|
|
4752
|
+
},
|
|
4753
|
+
thumbnailUrl: {
|
|
4754
|
+
type: 'string',
|
|
4755
|
+
description: "The post's first photo, as uploaded to the gallery (not the Instagram crop)",
|
|
4756
|
+
},
|
|
4757
|
+
permalink: {
|
|
4758
|
+
type: 'string',
|
|
4759
|
+
description: 'The post on Facebook / Instagram, once published',
|
|
4760
|
+
},
|
|
4761
|
+
publishedAt: {
|
|
4762
|
+
type: 'string',
|
|
4763
|
+
format: 'date-time',
|
|
4764
|
+
},
|
|
4765
|
+
createdBy: {
|
|
4766
|
+
$ref: '#/components/schemas/MemberPeekResponse',
|
|
4767
|
+
description: 'The member who created the post, also after they left the agency',
|
|
4768
|
+
},
|
|
4769
|
+
failureReason: {
|
|
4770
|
+
type: 'string',
|
|
4771
|
+
enum: [
|
|
4772
|
+
'RECONNECT_REQUIRED',
|
|
4773
|
+
'PERMISSION_MISSING',
|
|
4774
|
+
'PAGE_PUBLISHING_AUTHORIZATION',
|
|
4775
|
+
'RATE_LIMITED',
|
|
4776
|
+
'BAD_MEDIA',
|
|
4777
|
+
'UNCONFIRMED',
|
|
4778
|
+
'UNKNOWN',
|
|
4779
|
+
],
|
|
4780
|
+
},
|
|
4781
|
+
stats: {
|
|
4782
|
+
$ref: '#/components/schemas/SocialPostStats',
|
|
4783
|
+
description: "The post's public counts as last read from Facebook / Instagram; null until the first read",
|
|
4784
|
+
},
|
|
4785
|
+
},
|
|
4786
|
+
required: ['caption', 'channel', 'createdBy', 'postId', 'status'],
|
|
4787
|
+
};
|
|
4788
|
+
export const SocialPostStatsSchema = {
|
|
4789
|
+
type: 'object',
|
|
4790
|
+
properties: {
|
|
4791
|
+
likes: {
|
|
4792
|
+
type: 'integer',
|
|
4793
|
+
format: 'int32',
|
|
4794
|
+
},
|
|
4795
|
+
comments: {
|
|
4796
|
+
type: 'integer',
|
|
4797
|
+
format: 'int32',
|
|
4798
|
+
},
|
|
4799
|
+
shares: {
|
|
4800
|
+
type: 'integer',
|
|
4801
|
+
format: 'int32',
|
|
4802
|
+
},
|
|
4803
|
+
fetchedAt: {
|
|
4804
|
+
type: 'string',
|
|
4805
|
+
format: 'date-time',
|
|
4806
|
+
description: 'When the counts were read — show how old they are',
|
|
4807
|
+
},
|
|
4808
|
+
},
|
|
4809
|
+
required: ['comments', 'fetchedAt', 'likes', 'shares'],
|
|
4810
|
+
};
|
|
4513
4811
|
export const ListingOwnerContactResponseSchema = {
|
|
4514
4812
|
type: 'object',
|
|
4515
4813
|
properties: {
|
|
@@ -4554,6 +4852,25 @@ export const AgentCommentedSchema = {
|
|
|
4554
4852
|
},
|
|
4555
4853
|
required: ['kind'],
|
|
4556
4854
|
};
|
|
4855
|
+
export const ChannelReauthRequiredSchema = {
|
|
4856
|
+
properties: {
|
|
4857
|
+
connectionId: {
|
|
4858
|
+
$ref: '#/components/schemas/ConnectionId',
|
|
4859
|
+
},
|
|
4860
|
+
channelType: {
|
|
4861
|
+
type: 'string',
|
|
4862
|
+
enum: ['FACEBOOK', 'INSTAGRAM', 'WHATSAPP', 'TIKTOK'],
|
|
4863
|
+
},
|
|
4864
|
+
displayName: {
|
|
4865
|
+
type: 'string',
|
|
4866
|
+
},
|
|
4867
|
+
kind: {
|
|
4868
|
+
type: 'string',
|
|
4869
|
+
enum: ['CHANNEL_REAUTH_REQUIRED'],
|
|
4870
|
+
},
|
|
4871
|
+
},
|
|
4872
|
+
required: ['kind'],
|
|
4873
|
+
};
|
|
4557
4874
|
export const CommentIdSchema = {
|
|
4558
4875
|
type: 'object',
|
|
4559
4876
|
properties: {
|
|
@@ -4563,6 +4880,15 @@ export const CommentIdSchema = {
|
|
|
4563
4880
|
},
|
|
4564
4881
|
},
|
|
4565
4882
|
};
|
|
4883
|
+
export const ConnectionIdSchema = {
|
|
4884
|
+
type: 'object',
|
|
4885
|
+
properties: {
|
|
4886
|
+
value: {
|
|
4887
|
+
type: 'string',
|
|
4888
|
+
format: 'uuid',
|
|
4889
|
+
},
|
|
4890
|
+
},
|
|
4891
|
+
};
|
|
4566
4892
|
export const ContactAssignedSchema = {
|
|
4567
4893
|
properties: {
|
|
4568
4894
|
contactId: {
|
|
@@ -4734,6 +5060,8 @@ export const NotificationContentSchema = {
|
|
|
4734
5060
|
SUBSCRIPTION_ENDING: '#/components/schemas/SubscriptionEnding',
|
|
4735
5061
|
SUBSCRIPTION_EXPIRED: '#/components/schemas/SubscriptionExpired',
|
|
4736
5062
|
SUBSCRIPTION_PAYMENT_REVERSED: '#/components/schemas/SubscriptionPaymentReversed',
|
|
5063
|
+
CHANNEL_REAUTH_REQUIRED: '#/components/schemas/ChannelReauthRequired',
|
|
5064
|
+
SOCIAL_POST_FAILED: '#/components/schemas/SocialPostFailed',
|
|
4737
5065
|
},
|
|
4738
5066
|
},
|
|
4739
5067
|
required: ['kind'],
|
|
@@ -4776,6 +5104,8 @@ export const NotificationViewSchema = {
|
|
|
4776
5104
|
'SUBSCRIPTION_ENDING',
|
|
4777
5105
|
'SUBSCRIPTION_EXPIRED',
|
|
4778
5106
|
'SUBSCRIPTION_PAYMENT_REVERSED',
|
|
5107
|
+
'CHANNEL_REAUTH_REQUIRED',
|
|
5108
|
+
'SOCIAL_POST_FAILED',
|
|
4779
5109
|
],
|
|
4780
5110
|
},
|
|
4781
5111
|
targetId: {
|
|
@@ -4786,6 +5116,9 @@ export const NotificationViewSchema = {
|
|
|
4786
5116
|
{
|
|
4787
5117
|
$ref: '#/components/schemas/AgentCommented',
|
|
4788
5118
|
},
|
|
5119
|
+
{
|
|
5120
|
+
$ref: '#/components/schemas/ChannelReauthRequired',
|
|
5121
|
+
},
|
|
4789
5122
|
{
|
|
4790
5123
|
$ref: '#/components/schemas/ContactAssigned',
|
|
4791
5124
|
},
|
|
@@ -4798,6 +5131,9 @@ export const NotificationViewSchema = {
|
|
|
4798
5131
|
{
|
|
4799
5132
|
$ref: '#/components/schemas/NewSeekerRating',
|
|
4800
5133
|
},
|
|
5134
|
+
{
|
|
5135
|
+
$ref: '#/components/schemas/SocialPostFailed',
|
|
5136
|
+
},
|
|
4801
5137
|
{
|
|
4802
5138
|
$ref: '#/components/schemas/SubscriptionEnding',
|
|
4803
5139
|
},
|
|
@@ -4834,6 +5170,56 @@ export const PropertyIdSchema = {
|
|
|
4834
5170
|
},
|
|
4835
5171
|
},
|
|
4836
5172
|
};
|
|
5173
|
+
export const SocialPostFailedSchema = {
|
|
5174
|
+
properties: {
|
|
5175
|
+
postId: {
|
|
5176
|
+
$ref: '#/components/schemas/SocialPostId',
|
|
5177
|
+
},
|
|
5178
|
+
contactId: {
|
|
5179
|
+
$ref: '#/components/schemas/ContactId',
|
|
5180
|
+
},
|
|
5181
|
+
propertyId: {
|
|
5182
|
+
$ref: '#/components/schemas/PropertyId',
|
|
5183
|
+
},
|
|
5184
|
+
listingId: {
|
|
5185
|
+
type: 'integer',
|
|
5186
|
+
format: 'int64',
|
|
5187
|
+
},
|
|
5188
|
+
propertyTitle: {
|
|
5189
|
+
type: 'string',
|
|
5190
|
+
},
|
|
5191
|
+
channel: {
|
|
5192
|
+
type: 'string',
|
|
5193
|
+
enum: ['FACEBOOK', 'INSTAGRAM'],
|
|
5194
|
+
},
|
|
5195
|
+
reason: {
|
|
5196
|
+
type: 'string',
|
|
5197
|
+
enum: [
|
|
5198
|
+
'RECONNECT_REQUIRED',
|
|
5199
|
+
'PERMISSION_MISSING',
|
|
5200
|
+
'PAGE_PUBLISHING_AUTHORIZATION',
|
|
5201
|
+
'RATE_LIMITED',
|
|
5202
|
+
'BAD_MEDIA',
|
|
5203
|
+
'UNCONFIRMED',
|
|
5204
|
+
'UNKNOWN',
|
|
5205
|
+
],
|
|
5206
|
+
},
|
|
5207
|
+
kind: {
|
|
5208
|
+
type: 'string',
|
|
5209
|
+
enum: ['SOCIAL_POST_FAILED'],
|
|
5210
|
+
},
|
|
5211
|
+
},
|
|
5212
|
+
required: ['kind'],
|
|
5213
|
+
};
|
|
5214
|
+
export const SocialPostIdSchema = {
|
|
5215
|
+
type: 'object',
|
|
5216
|
+
properties: {
|
|
5217
|
+
value: {
|
|
5218
|
+
type: 'string',
|
|
5219
|
+
format: 'uuid',
|
|
5220
|
+
},
|
|
5221
|
+
},
|
|
5222
|
+
};
|
|
4837
5223
|
export const SubscriptionEndingSchema = {
|
|
4838
5224
|
properties: {
|
|
4839
5225
|
subscriptionId: {
|
|
@@ -5374,6 +5760,13 @@ export const ListingGridResponseSchema = {
|
|
|
5374
5760
|
$ref: '#/components/schemas/PlatformView',
|
|
5375
5761
|
},
|
|
5376
5762
|
},
|
|
5763
|
+
socialPosts: {
|
|
5764
|
+
type: 'array',
|
|
5765
|
+
description: 'Where the listing is posted on Facebook / Instagram: the latest published post per channel',
|
|
5766
|
+
items: {
|
|
5767
|
+
$ref: '#/components/schemas/SocialPostLink',
|
|
5768
|
+
},
|
|
5769
|
+
},
|
|
5377
5770
|
createdAt: {
|
|
5378
5771
|
type: 'string',
|
|
5379
5772
|
format: 'date-time',
|
|
@@ -5394,6 +5787,7 @@ export const ListingGridResponseSchema = {
|
|
|
5394
5787
|
'propertyId',
|
|
5395
5788
|
'propertyState',
|
|
5396
5789
|
'propertyType',
|
|
5790
|
+
'socialPosts',
|
|
5397
5791
|
'title',
|
|
5398
5792
|
'updatedAt',
|
|
5399
5793
|
],
|
|
@@ -5437,6 +5831,20 @@ export const PlatformViewSchema = {
|
|
|
5437
5831
|
},
|
|
5438
5832
|
},
|
|
5439
5833
|
};
|
|
5834
|
+
export const SocialPostLinkSchema = {
|
|
5835
|
+
type: 'object',
|
|
5836
|
+
properties: {
|
|
5837
|
+
channel: {
|
|
5838
|
+
type: 'string',
|
|
5839
|
+
enum: ['FACEBOOK', 'INSTAGRAM'],
|
|
5840
|
+
},
|
|
5841
|
+
permalink: {
|
|
5842
|
+
type: 'string',
|
|
5843
|
+
description: 'Opens the post on Facebook / Instagram',
|
|
5844
|
+
},
|
|
5845
|
+
},
|
|
5846
|
+
required: ['channel', 'permalink'],
|
|
5847
|
+
};
|
|
5440
5848
|
export const GroupCountSchema = {
|
|
5441
5849
|
type: 'object',
|
|
5442
5850
|
properties: {
|
|
@@ -5888,6 +6296,95 @@ export const CursorPageMessageViewSchema = {
|
|
|
5888
6296
|
},
|
|
5889
6297
|
},
|
|
5890
6298
|
};
|
|
6299
|
+
export const ComposerLimitsSchema = {
|
|
6300
|
+
type: 'object',
|
|
6301
|
+
properties: {
|
|
6302
|
+
maxPhotos: {
|
|
6303
|
+
type: 'integer',
|
|
6304
|
+
format: 'int32',
|
|
6305
|
+
},
|
|
6306
|
+
maxCaptionLength: {
|
|
6307
|
+
type: 'integer',
|
|
6308
|
+
format: 'int32',
|
|
6309
|
+
description: 'In Unicode code points: an emoji counts once, as [...text].length counts in JavaScript (text.length counts it twice)',
|
|
6310
|
+
},
|
|
6311
|
+
},
|
|
6312
|
+
required: ['maxCaptionLength', 'maxPhotos'],
|
|
6313
|
+
};
|
|
6314
|
+
export const ComposerPhotoSchema = {
|
|
6315
|
+
type: 'object',
|
|
6316
|
+
properties: {
|
|
6317
|
+
photoId: {
|
|
6318
|
+
type: 'integer',
|
|
6319
|
+
format: 'int64',
|
|
6320
|
+
description: 'What the publish request sends',
|
|
6321
|
+
},
|
|
6322
|
+
url: {
|
|
6323
|
+
type: 'string',
|
|
6324
|
+
},
|
|
6325
|
+
width: {
|
|
6326
|
+
type: 'integer',
|
|
6327
|
+
format: 'int32',
|
|
6328
|
+
description: 'As the photo is shown, in pixels',
|
|
6329
|
+
},
|
|
6330
|
+
height: {
|
|
6331
|
+
type: 'integer',
|
|
6332
|
+
format: 'int32',
|
|
6333
|
+
description: 'As the photo is shown, in pixels',
|
|
6334
|
+
},
|
|
6335
|
+
selectedByDefault: {
|
|
6336
|
+
type: 'boolean',
|
|
6337
|
+
},
|
|
6338
|
+
},
|
|
6339
|
+
required: ['height', 'photoId', 'selectedByDefault', 'url', 'width'],
|
|
6340
|
+
};
|
|
6341
|
+
export const ComposerPreviewSchema = {
|
|
6342
|
+
type: 'object',
|
|
6343
|
+
properties: {
|
|
6344
|
+
channel: {
|
|
6345
|
+
type: 'string',
|
|
6346
|
+
enum: ['FACEBOOK', 'INSTAGRAM'],
|
|
6347
|
+
},
|
|
6348
|
+
caption: {
|
|
6349
|
+
type: 'string',
|
|
6350
|
+
description: 'The built-in Georgian template filled in from the listing; a line with nothing to fill it is left out',
|
|
6351
|
+
},
|
|
6352
|
+
templateId: {
|
|
6353
|
+
type: 'string',
|
|
6354
|
+
format: 'uuid',
|
|
6355
|
+
description: 'The template the text came from, sent back on publish; null for the built-in one',
|
|
6356
|
+
},
|
|
6357
|
+
limits: {
|
|
6358
|
+
$ref: '#/components/schemas/ComposerLimits',
|
|
6359
|
+
},
|
|
6360
|
+
ratios: {
|
|
6361
|
+
type: 'array',
|
|
6362
|
+
description: "The shapes the agent can pick; empty on Facebook, which keeps each photo's own",
|
|
6363
|
+
items: {
|
|
6364
|
+
type: 'string',
|
|
6365
|
+
enum: ['LANDSCAPE', 'SQUARE', 'PORTRAIT'],
|
|
6366
|
+
},
|
|
6367
|
+
},
|
|
6368
|
+
defaultRatio: {
|
|
6369
|
+
type: 'string',
|
|
6370
|
+
description: 'Instagram only',
|
|
6371
|
+
enum: ['LANDSCAPE', 'SQUARE', 'PORTRAIT'],
|
|
6372
|
+
},
|
|
6373
|
+
photos: {
|
|
6374
|
+
type: 'array',
|
|
6375
|
+
description: 'The whole gallery, in gallery order',
|
|
6376
|
+
items: {
|
|
6377
|
+
$ref: '#/components/schemas/ComposerPhoto',
|
|
6378
|
+
},
|
|
6379
|
+
},
|
|
6380
|
+
access: {
|
|
6381
|
+
type: 'string',
|
|
6382
|
+
description: 'Whether the agency can post to the channel now; publishing refuses anything but ALLOWED',
|
|
6383
|
+
enum: ['ALLOWED', 'NOT_CONNECTED', 'RECONNECT_REQUIRED'],
|
|
6384
|
+
},
|
|
6385
|
+
},
|
|
6386
|
+
required: ['access', 'caption', 'channel', 'limits', 'photos', 'ratios'],
|
|
6387
|
+
};
|
|
5891
6388
|
export const ContactGridResponseSchema = {
|
|
5892
6389
|
type: 'object',
|
|
5893
6390
|
properties: {
|