@homespot-sdk/core 0.0.366 → 0.0.368

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.
@@ -2061,20 +2061,25 @@ export const PublishSocialPostRequestSchema = {
2061
2061
  caption: {
2062
2062
  type: 'string',
2063
2063
  },
2064
+ media: {
2065
+ type: 'string',
2066
+ description: "PHOTOS (the default) or VIDEO: the property's video, which takes no photos and no ratio",
2067
+ enum: ['PHOTOS', 'VIDEO'],
2068
+ },
2064
2069
  ratio: {
2065
2070
  type: 'string',
2066
- description: 'Instagram only; defaults to LANDSCAPE',
2071
+ description: 'Instagram photo posts only; defaults to LANDSCAPE',
2067
2072
  enum: ['LANDSCAPE', 'SQUARE', 'PORTRAIT'],
2068
2073
  },
2069
2074
  photos: {
2070
2075
  type: 'array',
2071
- description: 'In post order',
2076
+ description: 'In post order; none for a video post',
2072
2077
  items: {
2073
2078
  $ref: '#/components/schemas/Photo',
2074
2079
  },
2075
2080
  },
2076
2081
  },
2077
- required: ['caption', 'channel', 'photos'],
2082
+ required: ['caption', 'channel'],
2078
2083
  };
2079
2084
  export const FocusViewSchema = {
2080
2085
  type: 'object',
@@ -2122,16 +2127,21 @@ export const SocialPostViewSchema = {
2122
2127
  type: 'string',
2123
2128
  enum: ['PUBLISHING', 'PUBLISHED', 'FAILED', 'REMOVED'],
2124
2129
  },
2130
+ media: {
2131
+ type: 'string',
2132
+ enum: ['PHOTOS', 'VIDEO'],
2133
+ },
2125
2134
  caption: {
2126
2135
  type: 'string',
2127
2136
  },
2128
2137
  ratio: {
2129
2138
  type: 'string',
2130
- description: 'Instagram only',
2139
+ description: 'Instagram photo posts only',
2131
2140
  enum: ['LANDSCAPE', 'SQUARE', 'PORTRAIT'],
2132
2141
  },
2133
2142
  photos: {
2134
2143
  type: 'array',
2144
+ description: 'Empty for a video post',
2135
2145
  items: {
2136
2146
  $ref: '#/components/schemas/PhotoView',
2137
2147
  },
@@ -2174,6 +2184,7 @@ export const SocialPostViewSchema = {
2174
2184
  'createdAt',
2175
2185
  'createdBy',
2176
2186
  'id',
2187
+ 'media',
2177
2188
  'photos',
2178
2189
  'status',
2179
2190
  ],
@@ -2515,7 +2526,7 @@ export const AdminCheckoutRequestSchema = {
2515
2526
  type: 'array',
2516
2527
  items: {
2517
2528
  type: 'string',
2518
- enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING'],
2529
+ enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING', 'UNBRANDED_POSTS'],
2519
2530
  },
2520
2531
  uniqueItems: true,
2521
2532
  },
@@ -2632,7 +2643,7 @@ export const OrganizationSummaryViewResponseSchema = {
2632
2643
  },
2633
2644
  status: {
2634
2645
  type: 'string',
2635
- enum: ['NEW', 'ACTIVE', 'PAYMENT_FAILED', 'INACTIVE', 'SUSPENDED'],
2646
+ enum: ['NEW', 'ACTIVE', 'SUSPENDED'],
2636
2647
  },
2637
2648
  phone: {
2638
2649
  type: 'string',
@@ -3889,7 +3900,7 @@ export const SubscriptionResponseSchema = {
3889
3900
  type: 'array',
3890
3901
  items: {
3891
3902
  type: 'string',
3892
- enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING'],
3903
+ enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING', 'UNBRANDED_POSTS'],
3893
3904
  },
3894
3905
  uniqueItems: true,
3895
3906
  },
@@ -4031,7 +4042,7 @@ export const PlanResponseSchema = {
4031
4042
  type: 'array',
4032
4043
  items: {
4033
4044
  type: 'string',
4034
- enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING'],
4045
+ enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING', 'UNBRANDED_POSTS'],
4035
4046
  },
4036
4047
  uniqueItems: true,
4037
4048
  },
@@ -5240,7 +5251,7 @@ export const PlanOfferSchema = {
5240
5251
  type: 'array',
5241
5252
  items: {
5242
5253
  type: 'string',
5243
- enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING'],
5254
+ enum: ['SOCIAL_POSTS', 'AGENCY_BRANDING', 'UNBRANDED_POSTS'],
5244
5255
  },
5245
5256
  uniqueItems: true,
5246
5257
  },
@@ -5391,7 +5402,7 @@ export const AgencySummaryResponseSchema = {
5391
5402
  },
5392
5403
  status: {
5393
5404
  type: 'string',
5394
- enum: ['NEW', 'ACTIVE', 'PAYMENT_FAILED', 'INACTIVE', 'SUSPENDED'],
5405
+ enum: ['NEW', 'ACTIVE', 'SUSPENDED'],
5395
5406
  },
5396
5407
  logo: {
5397
5408
  type: 'string',
@@ -5895,6 +5906,10 @@ export const PropertyPageResponseSchema = {
5895
5906
  details: {
5896
5907
  $ref: '#/components/schemas/PropertyDetailsResponse',
5897
5908
  },
5909
+ video: {
5910
+ $ref: '#/components/schemas/PropertyVideoResponse',
5911
+ description: "The property's video; null when it has none",
5912
+ },
5898
5913
  agreement: {
5899
5914
  $ref: '#/components/schemas/AgreementResponse',
5900
5915
  },
@@ -5928,6 +5943,34 @@ export const PropertyPageResponseSchema = {
5928
5943
  'updatedAt',
5929
5944
  ],
5930
5945
  };
5946
+ export const PropertyVideoResponseSchema = {
5947
+ type: 'object',
5948
+ properties: {
5949
+ url: {
5950
+ type: 'string',
5951
+ description: 'An MP4 with its index first: a player can start before it has the file',
5952
+ },
5953
+ posterUrl: {
5954
+ type: 'string',
5955
+ description: 'A JPEG frame from the video, to show before it plays',
5956
+ },
5957
+ durationMs: {
5958
+ type: 'integer',
5959
+ format: 'int32',
5960
+ },
5961
+ width: {
5962
+ type: 'integer',
5963
+ format: 'int32',
5964
+ description: "As the video is shown, after the phone's rotation",
5965
+ },
5966
+ height: {
5967
+ type: 'integer',
5968
+ format: 'int32',
5969
+ description: "As the video is shown, after the phone's rotation",
5970
+ },
5971
+ },
5972
+ required: ['durationMs', 'height', 'posterUrl', 'url', 'width'],
5973
+ };
5931
5974
  export const SocialPostResponseSchema = {
5932
5975
  type: 'object',
5933
5976
  properties: {
@@ -5944,13 +5987,17 @@ export const SocialPostResponseSchema = {
5944
5987
  type: 'string',
5945
5988
  enum: ['PUBLISHING', 'PUBLISHED', 'FAILED', 'REMOVED'],
5946
5989
  },
5990
+ media: {
5991
+ type: 'string',
5992
+ enum: ['PHOTOS', 'VIDEO'],
5993
+ },
5947
5994
  caption: {
5948
5995
  type: 'string',
5949
5996
  description: 'Exactly as published',
5950
5997
  },
5951
5998
  thumbnailUrl: {
5952
5999
  type: 'string',
5953
- description: "The post's first photo, as uploaded to the gallery (not the Instagram crop)",
6000
+ description: "The post's first photo, as uploaded to the gallery (not the Instagram crop), or the poster of its video",
5954
6001
  },
5955
6002
  permalink: {
5956
6003
  type: 'string',
@@ -5990,6 +6037,7 @@ export const SocialPostResponseSchema = {
5990
6037
  'caption',
5991
6038
  'channel',
5992
6039
  'createdBy',
6040
+ 'media',
5993
6041
  'postId',
5994
6042
  'status',
5995
6043
  'unansweredComments',
@@ -6127,6 +6175,25 @@ export const ChannelReauthRequiredSchema = {
6127
6175
  },
6128
6176
  required: ['kind'],
6129
6177
  };
6178
+ export const ChannelTakenOverSchema = {
6179
+ properties: {
6180
+ connectionId: {
6181
+ $ref: '#/components/schemas/ConnectionId',
6182
+ },
6183
+ channelType: {
6184
+ type: 'string',
6185
+ enum: ['FACEBOOK', 'INSTAGRAM', 'WHATSAPP', 'TIKTOK'],
6186
+ },
6187
+ displayName: {
6188
+ type: 'string',
6189
+ },
6190
+ kind: {
6191
+ type: 'string',
6192
+ enum: ['CHANNEL_TAKEN_OVER'],
6193
+ },
6194
+ },
6195
+ required: ['kind'],
6196
+ };
6130
6197
  export const CommentIdSchema = {
6131
6198
  type: 'object',
6132
6199
  properties: {
@@ -6366,6 +6433,7 @@ export const NotificationContentSchema = {
6366
6433
  AI_MESSAGES_RUNNING_LOW: '#/components/schemas/AiMessagesRunningLow',
6367
6434
  AI_MESSAGES_USED_UP: '#/components/schemas/AiMessagesUsedUp',
6368
6435
  CHANNEL_REAUTH_REQUIRED: '#/components/schemas/ChannelReauthRequired',
6436
+ CHANNEL_TAKEN_OVER: '#/components/schemas/ChannelTakenOver',
6369
6437
  SOCIAL_POST_FAILED: '#/components/schemas/SocialPostFailed',
6370
6438
  SOCIAL_POST_COMMENTED: '#/components/schemas/SocialPostCommented',
6371
6439
  },
@@ -6417,6 +6485,7 @@ export const NotificationViewSchema = {
6417
6485
  'AI_MESSAGES_RUNNING_LOW',
6418
6486
  'AI_MESSAGES_USED_UP',
6419
6487
  'CHANNEL_REAUTH_REQUIRED',
6488
+ 'CHANNEL_TAKEN_OVER',
6420
6489
  'SOCIAL_POST_FAILED',
6421
6490
  'SOCIAL_POST_COMMENTED',
6422
6491
  ],
@@ -6438,6 +6507,9 @@ export const NotificationViewSchema = {
6438
6507
  {
6439
6508
  $ref: '#/components/schemas/ChannelReauthRequired',
6440
6509
  },
6510
+ {
6511
+ $ref: '#/components/schemas/ChannelTakenOver',
6512
+ },
6441
6513
  {
6442
6514
  $ref: '#/components/schemas/ContactAssigned',
6443
6515
  },
@@ -7757,7 +7829,7 @@ export const ComposerLimitsSchema = {
7757
7829
  maxCaptionLength: {
7758
7830
  type: 'integer',
7759
7831
  format: 'int32',
7760
- description: 'In Unicode code points: an emoji counts once, as [...text].length counts in JavaScript (text.length counts it twice)',
7832
+ description: "Of the agent's text, with room left for the credit when there is one. In Unicode code points: an emoji counts once, as [...text].length counts in JavaScript (text.length counts it twice)",
7761
7833
  },
7762
7834
  maxHashtags: {
7763
7835
  type: 'integer',
@@ -7810,6 +7882,10 @@ export const ComposerPreviewSchema = {
7810
7882
  type: 'string',
7811
7883
  description: "The agency's text for the property's group (HomeSpot's until it writes one), filled in from the listing; a line with a fact the listing lacks is left out",
7812
7884
  },
7885
+ credit: {
7886
+ type: 'string',
7887
+ description: "HomeSpot's line, which publishing adds under the text on a plan without UNBRANDED_POSTS (Free and Plus): show it under the text box, where the agent can't edit it, and don't send it with the caption. Null on a plan that can take it out (Pro): there it is in the caption, as text",
7888
+ },
7813
7889
  group: {
7814
7890
  type: 'string',
7815
7891
  description: 'The property group whose template the caption came from: the one an Edit template opens',
@@ -7852,6 +7928,10 @@ export const ComposerPreviewSchema = {
7852
7928
  $ref: '#/components/schemas/ComposerPhoto',
7853
7929
  },
7854
7930
  },
7931
+ video: {
7932
+ $ref: '#/components/schemas/ComposerVideo',
7933
+ description: "The property's video, which a post may show instead of photos; null when it has none",
7934
+ },
7855
7935
  access: {
7856
7936
  type: 'string',
7857
7937
  description: 'Whether the agency can post to the channel now; publishing refuses anything but ALLOWED',
@@ -7869,6 +7949,44 @@ export const ComposerPreviewSchema = {
7869
7949
  'ratios',
7870
7950
  ],
7871
7951
  };
7952
+ export const ComposerVideoSchema = {
7953
+ type: 'object',
7954
+ properties: {
7955
+ url: {
7956
+ type: 'string',
7957
+ },
7958
+ posterUrl: {
7959
+ type: 'string',
7960
+ description: "A frame of the video: Instagram's cover for the Reel",
7961
+ },
7962
+ durationMs: {
7963
+ type: 'integer',
7964
+ format: 'int32',
7965
+ },
7966
+ width: {
7967
+ type: 'integer',
7968
+ format: 'int32',
7969
+ description: 'As the video is shown, in pixels',
7970
+ },
7971
+ height: {
7972
+ type: 'integer',
7973
+ format: 'int32',
7974
+ description: 'As the video is shown, in pixels',
7975
+ },
7976
+ transcoding: {
7977
+ type: 'boolean',
7978
+ description: 'A copy that Instagram takes is being made to replace a 4K, slow-motion or very high-bitrate video, for a few minutes after the upload. Until it is done the video cannot be posted (409 video-processing); ask for the preview again to see when it is',
7979
+ },
7980
+ },
7981
+ required: [
7982
+ 'durationMs',
7983
+ 'height',
7984
+ 'posterUrl',
7985
+ 'transcoding',
7986
+ 'url',
7987
+ 'width',
7988
+ ],
7989
+ };
7872
7990
  export const LeftOutFactSchema = {
7873
7991
  type: 'object',
7874
7992
  properties: {