zernio-sdk 0.0.521 → 0.0.523

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.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -1
  3. data/docs/AnalyticsApi.md +2 -2
  4. data/docs/ConnectApi.md +4 -4
  5. data/docs/CreateStandaloneAdRequestPromotedObject.md +1 -1
  6. data/docs/FoodMenuItemOptionsInner.md +2 -2
  7. data/docs/GMBAttributesApi.md +1 -1
  8. data/docs/GMBMediaApi.md +1 -1
  9. data/docs/SelectLinkedInOrganizationRequest.md +1 -1
  10. data/docs/SelectLinkedInOrganizationRequestSelectedOrganization.md +26 -0
  11. data/docs/UpdateGmbLocationRequest.md +3 -1
  12. data/docs/UpdateGoogleBusinessAttributesRequestAttributesInner.md +6 -2
  13. data/docs/UpdateGoogleBusinessAttributesRequestAttributesInnerUriValuesInner.md +18 -0
  14. data/docs/UpdateGoogleBusinessServicesRequestServiceItemsInner.md +3 -3
  15. data/docs/UpdateGoogleBusinessServicesRequestServiceItemsInnerFreeFormServiceItem.md +20 -0
  16. data/docs/UpdateGoogleBusinessServicesRequestServiceItemsInnerFreeFormServiceItemLabel.md +22 -0
  17. data/docs/UpdateGoogleBusinessServicesRequestServiceItemsInnerPrice.md +22 -0
  18. data/docs/UpdateGoogleBusinessServicesRequestServiceItemsInnerStructuredServiceItem.md +20 -0
  19. data/docs/UpdateLinkedInOrganization200Response.md +22 -0
  20. data/lib/zernio-sdk/api/analytics_api.rb +11 -2
  21. data/lib/zernio-sdk/api/connect_api.rb +7 -3
  22. data/lib/zernio-sdk/api/gmb_media_api.rb +6 -2
  23. data/lib/zernio-sdk/api/gmb_place_actions_api.rb +4 -4
  24. data/lib/zernio-sdk/api/gmb_verifications_api.rb +8 -0
  25. data/lib/zernio-sdk/models/batch_get_google_business_reviews_request.rb +37 -0
  26. data/lib/zernio-sdk/models/create_google_business_media_request.rb +21 -2
  27. data/lib/zernio-sdk/models/create_standalone_ad_request_promoted_object.rb +1 -1
  28. data/lib/zernio-sdk/models/food_menu.rb +9 -0
  29. data/lib/zernio-sdk/models/food_menu_item.rb +9 -0
  30. data/lib/zernio-sdk/models/food_menu_item_attributes.rb +53 -0
  31. data/lib/zernio-sdk/models/food_menu_item_options_inner.rb +43 -0
  32. data/lib/zernio-sdk/models/food_menu_section.rb +9 -0
  33. data/lib/zernio-sdk/models/get_telegram_commands200_response_data_inner.rb +67 -0
  34. data/lib/zernio-sdk/models/reply_to_google_business_review_request.rb +9 -0
  35. data/lib/zernio-sdk/models/select_linked_in_organization_request.rb +1 -1
  36. data/lib/zernio-sdk/models/select_linked_in_organization_request_selected_organization.rb +263 -0
  37. data/lib/zernio-sdk/models/set_instagram_ice_breakers_request.rb +9 -0
  38. data/lib/zernio-sdk/models/set_instagram_ice_breakers_request_ice_breakers_inner.rb +18 -0
  39. data/lib/zernio-sdk/models/set_reddit_post_flair_request.rb +27 -0
  40. data/lib/zernio-sdk/models/set_telegram_commands_request.rb +9 -0
  41. data/lib/zernio-sdk/models/set_telegram_commands_request_commands_inner.rb +47 -0
  42. data/lib/zernio-sdk/models/update_gmb_location_request.rb +61 -4
  43. data/lib/zernio-sdk/models/update_google_business_attributes_request.rb +9 -0
  44. data/lib/zernio-sdk/models/update_google_business_attributes_request_attributes_inner.rb +84 -4
  45. data/lib/zernio-sdk/models/update_google_business_attributes_request_attributes_inner_uri_values_inner.rb +164 -0
  46. data/lib/zernio-sdk/models/update_google_business_place_action_request.rb +0 -22
  47. data/lib/zernio-sdk/models/update_google_business_services_request_service_items_inner.rb +3 -3
  48. data/lib/zernio-sdk/models/update_google_business_services_request_service_items_inner_free_form_service_item.rb +199 -0
  49. data/lib/zernio-sdk/models/update_google_business_services_request_service_items_inner_free_form_service_item_label.rb +191 -0
  50. data/lib/zernio-sdk/models/update_google_business_services_request_service_items_inner_price.rb +203 -0
  51. data/lib/zernio-sdk/models/update_google_business_services_request_service_items_inner_structured_service_item.rb +182 -0
  52. data/lib/zernio-sdk/models/{get_linked_in_post_reactions400_response.rb → update_linked_in_organization200_response.rb} +33 -24
  53. data/lib/zernio-sdk/models/update_reddit_subreddits_request.rb +9 -0
  54. data/lib/zernio-sdk/models/update_youtube_default_playlist_request.rb +9 -0
  55. data/lib/zernio-sdk/version.rb +1 -1
  56. data/lib/zernio-sdk.rb +7 -1
  57. data/openapi.yaml +112 -60
  58. data/spec/api/analytics_api_spec.rb +1 -1
  59. data/spec/api/connect_api_spec.rb +1 -1
  60. data/spec/api/gmb_media_api_spec.rb +1 -1
  61. data/spec/models/create_google_business_media_request_spec.rb +1 -1
  62. data/spec/models/food_menu_item_attributes_spec.rb +4 -0
  63. data/spec/models/select_linked_in_organization_request_selected_organization_spec.rb +60 -0
  64. data/spec/models/update_gmb_location_request_spec.rb +6 -0
  65. data/spec/models/update_google_business_attributes_request_attributes_inner_spec.rb +16 -0
  66. data/spec/models/update_google_business_attributes_request_attributes_inner_uri_values_inner_spec.rb +36 -0
  67. data/spec/models/update_google_business_services_request_service_items_inner_free_form_service_item_label_spec.rb +48 -0
  68. data/spec/models/update_google_business_services_request_service_items_inner_free_form_service_item_spec.rb +42 -0
  69. data/spec/models/update_google_business_services_request_service_items_inner_price_spec.rb +48 -0
  70. data/spec/models/update_google_business_services_request_service_items_inner_structured_service_item_spec.rb +42 -0
  71. data/spec/models/{get_linked_in_post_reactions400_response_spec.rb → update_linked_in_organization200_response_spec.rb} +16 -10
  72. metadata +30 -6
  73. data/docs/GetLinkedInPostReactions400Response.md +0 -20
data/openapi.yaml CHANGED
@@ -458,6 +458,11 @@ components:
458
458
  description: Page size
459
459
  schema: { type: integer, minimum: 1, maximum: 100, default: 10 }
460
460
  responses:
461
+ BadRequest:
462
+ description: Invalid request
463
+ content:
464
+ application/json:
465
+ schema: { $ref: '#/components/schemas/ErrorResponse' }
461
466
  Unauthorized:
462
467
  description: Unauthorized
463
468
  content:
@@ -1132,7 +1137,7 @@ components:
1132
1137
  type: object
1133
1138
  properties:
1134
1139
  price: { $ref: '#/components/schemas/Money' }
1135
- spiciness: { type: string, description: "Spiciness level (e.g. MILD, MEDIUM, HOT)" }
1140
+ spiciness: { type: string, enum: [SPICINESS_UNSPECIFIED, MILD, MEDIUM, HOT], description: "Spiciness level (e.g. MILD, MEDIUM, HOT)" }
1136
1141
  allergen:
1137
1142
  type: array
1138
1143
  items: { type: string }
@@ -1141,7 +1146,7 @@ components:
1141
1146
  type: array
1142
1147
  items: { type: string }
1143
1148
  description: "Dietary labels (e.g. VEGETARIAN, VEGAN, GLUTEN_FREE)"
1144
- servesNumPeople: { type: integer, description: Number of people the item serves }
1149
+ servesNumPeople: { type: integer, minimum: 1, description: Number of people the item serves }
1145
1150
  preparationMethods:
1146
1151
  type: array
1147
1152
  items: { type: string }
@@ -1156,15 +1161,18 @@ components:
1156
1161
  properties:
1157
1162
  labels:
1158
1163
  type: array
1164
+ minItems: 1
1159
1165
  items: { $ref: '#/components/schemas/FoodMenuLabel' }
1160
1166
  attributes: { $ref: '#/components/schemas/FoodMenuItemAttributes' }
1161
1167
  options:
1162
1168
  type: array
1163
1169
  items:
1164
1170
  type: object
1171
+ required: [labels, attributes]
1165
1172
  properties:
1166
1173
  labels:
1167
1174
  type: array
1175
+ minItems: 1
1168
1176
  items: { $ref: '#/components/schemas/FoodMenuLabel' }
1169
1177
  attributes: { $ref: '#/components/schemas/FoodMenuItemAttributes' }
1170
1178
  description: Item variants/options (e.g. sizes, preparations)
@@ -1174,6 +1182,7 @@ components:
1174
1182
  properties:
1175
1183
  labels:
1176
1184
  type: array
1185
+ minItems: 1
1177
1186
  items: { $ref: '#/components/schemas/FoodMenuLabel' }
1178
1187
  items:
1179
1188
  type: array
@@ -1184,6 +1193,7 @@ components:
1184
1193
  properties:
1185
1194
  labels:
1186
1195
  type: array
1196
+ minItems: 1
1187
1197
  items: { $ref: '#/components/schemas/FoodMenuLabel' }
1188
1198
  sections:
1189
1199
  type: array
@@ -1194,6 +1204,7 @@ components:
1194
1204
  description: "Cuisine types (e.g. AMERICAN, ITALIAN, JAPANESE)"
1195
1205
  sourceUrl:
1196
1206
  type: string
1207
+ format: uri
1197
1208
  description: URL of the original menu source
1198
1209
  YouTubeDailyViewsResponse:
1199
1210
  type: object
@@ -13211,6 +13222,7 @@ paths:
13211
13222
  tokenValid: false
13212
13223
  needsReconnect: true
13213
13224
  issues: ["Token expired"]
13225
+ '400': { $ref: '#/components/responses/BadRequest' }
13214
13226
  '401': { $ref: '#/components/responses/Unauthorized' }
13215
13227
  /v1/accounts/{accountId}/health:
13216
13228
  get:
@@ -14561,7 +14573,7 @@ paths:
14561
14573
  description: The Zernio account ID (from /v1/accounts)
14562
14574
  - name: locationId
14563
14575
  in: query
14564
- schema: { type: string }
14576
+ schema: { type: string, minLength: 1 }
14565
14577
  description: Override which location to query. If omitted, uses the account's selected location.
14566
14578
  security:
14567
14579
  - bearerAuth: []
@@ -14629,7 +14641,7 @@ paths:
14629
14641
  description: The last segment of a verification `name` from GET /gmb-verifications.
14630
14642
  - name: locationId
14631
14643
  in: query
14632
- schema: { type: string }
14644
+ schema: { type: string, minLength: 1 }
14633
14645
  description: Override which location to target. If omitted, uses the account's selected location.
14634
14646
  security:
14635
14647
  - bearerAuth: []
@@ -15243,7 +15255,7 @@ paths:
15243
15255
  description: Override which location to query. If omitted, uses the account's selected location. Use GET /gmb-locations to list valid IDs.
15244
15256
  - name: pageSize
15245
15257
  in: query
15246
- schema: { type: integer, maximum: 100, default: 100 }
15258
+ schema: { type: integer, minimum: 1, maximum: 100, default: 100 }
15247
15259
  description: Number of items to return (max 100)
15248
15260
  - name: pageToken
15249
15261
  in: query
@@ -15297,7 +15309,7 @@ paths:
15297
15309
  description: |
15298
15310
  Creates a media item (photo) for a location from a publicly accessible URL.
15299
15311
 
15300
- Categories determine where the photo appears: COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, FOOD_AND_DRINK, MENU, PRODUCT, TEAMS, ADDITIONAL.
15312
+ Categories determine where the photo appears: CATEGORY_UNSPECIFIED, COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, PRODUCT, FOOD_AND_DRINK, MENU, COMMON_AREA, ROOMS, TEAMS, AT_WORK, ADDITIONAL.
15301
15313
  parameters:
15302
15314
  - name: accountId
15303
15315
  in: path
@@ -15317,12 +15329,12 @@ paths:
15317
15329
  type: object
15318
15330
  required: [sourceUrl]
15319
15331
  properties:
15320
- sourceUrl: { type: string, description: Publicly accessible image URL }
15332
+ sourceUrl: { type: string, format: uri, description: Publicly accessible image URL }
15321
15333
  mediaFormat: { type: string, enum: [PHOTO, VIDEO], default: PHOTO }
15322
- description: { type: string, description: Photo description }
15334
+ description: { type: string, minLength: 1, description: Photo description }
15323
15335
  category:
15324
15336
  type: string
15325
- enum: [COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, FOOD_AND_DRINK, MENU, PRODUCT, TEAMS, ADDITIONAL]
15337
+ enum: [CATEGORY_UNSPECIFIED, COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, PRODUCT, FOOD_AND_DRINK, MENU, COMMON_AREA, ROOMS, TEAMS, AT_WORK, ADDITIONAL]
15326
15338
  description: Where the photo appears on the listing
15327
15339
  example:
15328
15340
  sourceUrl: "https://example.com/photos/restaurant-interior.jpg"
@@ -15630,16 +15642,28 @@ paths:
15630
15642
  type: array
15631
15643
  items:
15632
15644
  type: object
15645
+ required: [name]
15633
15646
  properties:
15634
- name: { type: string }
15647
+ name: { type: string, minLength: 1 }
15648
+ valueType:
15649
+ type: string
15650
+ enum: [ATTRIBUTE_VALUE_TYPE_UNSPECIFIED, BOOL, ENUM, URL, REPEATED_ENUM]
15635
15651
  values: { type: array, items: {} }
15636
15652
  repeatedEnumValue:
15637
15653
  type: object
15638
15654
  properties:
15639
15655
  setValues: { type: array, items: { type: string } }
15640
15656
  unsetValues: { type: array, items: { type: string } }
15657
+ uriValues:
15658
+ type: array
15659
+ items:
15660
+ type: object
15661
+ required: [uri]
15662
+ properties:
15663
+ uri: { type: string, format: uri }
15641
15664
  attributeMask:
15642
15665
  type: string
15666
+ minLength: 1
15643
15667
  description: "Comma-separated attribute names to update (e.g. 'has_delivery,has_takeout')"
15644
15668
  example:
15645
15669
  attributes:
@@ -15693,7 +15717,7 @@ paths:
15693
15717
  description: Override which location to query. If omitted, uses the account's selected location. Use GET /gmb-locations to list valid IDs.
15694
15718
  - name: pageSize
15695
15719
  in: query
15696
- schema: { type: integer, maximum: 100, default: 100 }
15720
+ schema: { type: integer, minimum: 1, maximum: 100, default: 100 }
15697
15721
  - name: pageToken
15698
15722
  in: query
15699
15723
  schema: { type: string }
@@ -15767,7 +15791,7 @@ paths:
15767
15791
  type: object
15768
15792
  required: [uri, placeActionType]
15769
15793
  properties:
15770
- uri: { type: string, description: The action URL }
15794
+ uri: { type: string, format: uri, description: The action URL }
15771
15795
  placeActionType:
15772
15796
  type: string
15773
15797
  enum: [APPOINTMENT, ONLINE_APPOINTMENT, DINING_RESERVATION, FOOD_ORDERING, FOOD_DELIVERY, FOOD_TAKEOUT, SHOP_ONLINE]
@@ -15864,12 +15888,16 @@ paths:
15864
15888
  schema:
15865
15889
  type: object
15866
15890
  required: [name]
15891
+ anyOf:
15892
+ - required: [uri]
15893
+ - required: [placeActionType]
15867
15894
  properties:
15868
15895
  name:
15869
15896
  type: string
15870
15897
  description: "Resource name of the place action link (e.g. locations/123/placeActionLinks/456)"
15871
15898
  uri:
15872
15899
  type: string
15900
+ format: uri
15873
15901
  description: New action URL
15874
15902
  placeActionType:
15875
15903
  type: string
@@ -15956,6 +15984,11 @@ paths:
15956
15984
  currencyCode: { type: string, example: "USD" }
15957
15985
  units: { type: string, example: "50" }
15958
15986
  nanos: { type: integer }
15987
+ '400':
15988
+ description: Invalid request
15989
+ content:
15990
+ application/json:
15991
+ schema: { $ref: '#/components/schemas/ErrorResponse' }
15959
15992
  '401':
15960
15993
  description: Unauthorized
15961
15994
  content:
@@ -15992,26 +16025,33 @@ paths:
15992
16025
  type: array
15993
16026
  items:
15994
16027
  type: object
16028
+ oneOf:
16029
+ - required: [structuredServiceItem]
16030
+ - required: [freeFormServiceItem]
15995
16031
  properties:
15996
16032
  structuredServiceItem:
15997
16033
  type: object
16034
+ required: [serviceTypeId]
15998
16035
  properties:
15999
- serviceTypeId: { type: string }
16036
+ serviceTypeId: { type: string, minLength: 1 }
16000
16037
  description: { type: string }
16001
16038
  freeFormServiceItem:
16002
16039
  type: object
16040
+ required: [category, label]
16003
16041
  properties:
16004
- category: { type: string }
16042
+ category: { type: string, minLength: 1 }
16005
16043
  label:
16006
16044
  type: object
16045
+ required: [displayName]
16007
16046
  properties:
16008
- displayName: { type: string }
16047
+ displayName: { type: string, minLength: 1 }
16009
16048
  description: { type: string }
16049
+ languageCode: { type: string }
16010
16050
  price:
16011
16051
  type: object
16012
16052
  properties:
16013
- currencyCode: { type: string }
16014
- units: { type: string }
16053
+ currencyCode: { type: string, minLength: 1 }
16054
+ units: { type: string, minLength: 1 }
16015
16055
  nanos: { type: integer }
16016
16056
  example:
16017
16057
  serviceItems:
@@ -16068,15 +16108,18 @@ paths:
16068
16108
  properties:
16069
16109
  locationNames:
16070
16110
  type: array
16071
- items: { type: string }
16111
+ minItems: 1
16112
+ items: { type: string, pattern: '^accounts/[^/]+/locations/[^/]+$' }
16072
16113
  description: "Array of full location resource names (e.g. ['accounts/123/locations/456'])"
16073
16114
  pageSize:
16074
16115
  type: integer
16116
+ minimum: 1
16075
16117
  maximum: 50
16076
16118
  default: 50
16077
16119
  description: Number of reviews per page (max 50)
16078
16120
  pageToken:
16079
16121
  type: string
16122
+ minLength: 1
16080
16123
  description: Pagination token from previous response
16081
16124
  example:
16082
16125
  locationNames: ["accounts/123/locations/456", "accounts/123/locations/789"]
@@ -16142,6 +16185,7 @@ paths:
16142
16185
  properties:
16143
16186
  comment:
16144
16187
  type: string
16188
+ minLength: 1
16145
16189
  description: The reply text to post on the review. Must be non-empty.
16146
16190
  example:
16147
16191
  comment: "Thank you for your kind words, we really appreciate it!"
@@ -16404,7 +16448,15 @@ paths:
16404
16448
  tempToken: { type: string }
16405
16449
  userProfile: { type: object }
16406
16450
  accountType: { type: string, enum: [personal, organization] }
16407
- selectedOrganization: { type: object }
16451
+ selectedOrganization:
16452
+ type: object
16453
+ required: [id, urn, name]
16454
+ properties:
16455
+ id: { type: string, minLength: 1 }
16456
+ urn: { type: string, pattern: '^urn:li:organization:' }
16457
+ name: { type: string, minLength: 1 }
16458
+ logoUrl: { type: string, format: uri }
16459
+ vanityName: { type: string }
16408
16460
  redirect_url: { type: string, format: uri }
16409
16461
  examples:
16410
16462
  personalAccount:
@@ -17804,7 +17856,7 @@ paths:
17804
17856
  in: query
17805
17857
  required: true
17806
17858
  description: The LinkedIn post URN
17807
- schema: { type: string }
17859
+ schema: { type: string, pattern: '^urn:li:(share|ugcPost|activity):[0-9]+$' }
17808
17860
  example: "urn:li:share:7123456789012345678"
17809
17861
  - name: limit
17810
17862
  in: query
@@ -17812,7 +17864,7 @@ paths:
17812
17864
  description: Maximum number of reactions to return per page
17813
17865
  - name: cursor
17814
17866
  in: query
17815
- schema: { type: string }
17867
+ schema: { type: integer, minimum: 0, default: 0 }
17816
17868
  description: Offset-based pagination start index
17817
17869
  responses:
17818
17870
  '200':
@@ -17877,15 +17929,7 @@ paths:
17877
17929
  cursor: "25"
17878
17930
  total: 156
17879
17931
  lastUpdated: "2026-03-08T12:00:00.000Z"
17880
- '400':
17881
- description: Invalid request or platform limitation
17882
- content:
17883
- application/json:
17884
- schema:
17885
- type: object
17886
- properties:
17887
- error: { type: string }
17888
- code: { type: string, enum: [missing_urn, invalid_urn, invalid_platform, PLATFORM_LIMITATION] }
17932
+ '400': { $ref: '#/components/responses/BadRequest' }
17889
17933
  '401': { $ref: '#/components/responses/Unauthorized' }
17890
17934
  '402':
17891
17935
  description: Analytics access required. Legacy plans need the Analytics add-on; included by default on usage-based plans.
@@ -17919,6 +17963,7 @@ paths:
17919
17963
  accountType: "organization"
17920
17964
  selectedOrganization:
17921
17965
  id: "12345678"
17966
+ urn: "urn:li:organization:12345678"
17922
17967
  name: "Acme Corporation"
17923
17968
  vanityName: "acme-corp"
17924
17969
  responses:
@@ -17930,15 +17975,12 @@ paths:
17930
17975
  type: object
17931
17976
  properties:
17932
17977
  message: { type: string }
17933
- account: { $ref: '#/components/schemas/SocialAccount' }
17978
+ accountType: { type: string, enum: [personal, organization] }
17979
+ accountName: { type: string }
17934
17980
  example:
17935
- message: "LinkedIn account type updated successfully"
17936
- account:
17937
- _id: "64e1f0a9e2b5af0012ab34cd"
17938
- platform: "linkedin"
17939
- username: "acme-corp"
17940
- displayName: "Acme Corporation"
17941
- isActive: true
17981
+ message: "LinkedIn account updated successfully"
17982
+ accountType: "organization"
17983
+ accountName: "Acme Corporation"
17942
17984
  '400': { description: Invalid request }
17943
17985
  '401': { $ref: '#/components/responses/Unauthorized' }
17944
17986
  '404': { description: Account not found }
@@ -18457,7 +18499,7 @@ paths:
18457
18499
  type: object
18458
18500
  required: [defaultPlaylistId]
18459
18501
  properties:
18460
- defaultPlaylistId: { type: string }
18502
+ defaultPlaylistId: { type: string, minLength: 1 }
18461
18503
  defaultPlaylistName: { type: string }
18462
18504
  example:
18463
18505
  defaultPlaylistId: "PLxxxxxxxxxxxxx"
@@ -18566,9 +18608,10 @@ paths:
18566
18608
  type: object
18567
18609
  required: [selectedLocationId]
18568
18610
  properties:
18569
- selectedLocationId: { type: string }
18611
+ selectedLocationId: { type: string, minLength: 1 }
18570
18612
  googleAccountId:
18571
18613
  type: string
18614
+ minLength: 1
18572
18615
  description: >
18573
18616
  Optional but recommended. The Google Business Account resource name
18574
18617
  ("accounts/123") that owns the new location (from GET gmb-locations).
@@ -18577,6 +18620,11 @@ paths:
18577
18620
  locations. Named `googleAccountId` to disambiguate from the path
18578
18621
  `accountId` (the Zernio account). The legacy field name `accountId`
18579
18622
  is still accepted for backwards compatibility.
18623
+ accountId:
18624
+ type: string
18625
+ minLength: 1
18626
+ deprecated: true
18627
+ description: Legacy alias for googleAccountId. Use googleAccountId for new integrations.
18580
18628
  example:
18581
18629
  selectedLocationId: "12345678901234567890"
18582
18630
  googleAccountId: "accounts/123456789"
@@ -18813,7 +18861,7 @@ paths:
18813
18861
  type: object
18814
18862
  required: [defaultSubreddit]
18815
18863
  properties:
18816
- defaultSubreddit: { type: string }
18864
+ defaultSubreddit: { type: string, minLength: 1 }
18817
18865
  example:
18818
18866
  defaultSubreddit: "marketing"
18819
18867
  responses:
@@ -18962,7 +19010,7 @@ paths:
18962
19010
  - name: subreddit
18963
19011
  in: query
18964
19012
  required: true
18965
- schema: { type: string }
19013
+ schema: { type: string, minLength: 1 }
18966
19014
  description: Subreddit name (without "r/" prefix) to fetch flairs for
18967
19015
  responses:
18968
19016
  '200':
@@ -19021,9 +19069,9 @@ paths:
19021
19069
  type: object
19022
19070
  required: [subreddit, postId, flairTemplateId]
19023
19071
  properties:
19024
- subreddit: { type: string, description: Subreddit name (without the "r/" prefix) }
19025
- postId: { type: string, description: 'Reddit post id, with or without the t3_ prefix' }
19026
- flairTemplateId: { type: string, description: Flair template id from the GET on this path }
19072
+ subreddit: { type: string, minLength: 1, description: Subreddit name (without the "r/" prefix) }
19073
+ postId: { type: string, minLength: 1, description: 'Reddit post id, with or without the t3_ prefix' }
19074
+ flairTemplateId: { type: string, minLength: 1, description: Flair template id from the GET on this path }
19027
19075
  text: { type: string, description: "Optional override text, only for editable flair templates" }
19028
19076
  example:
19029
19077
  subreddit: "webdev"
@@ -22517,6 +22565,7 @@ paths:
22517
22565
  responses:
22518
22566
  '200':
22519
22567
  description: Menu deleted
22568
+ '400': { $ref: '#/components/responses/BadRequest' }
22520
22569
  '401': { $ref: '#/components/responses/Unauthorized' }
22521
22570
 
22522
22571
  /v1/accounts/{accountId}/instagram-ice-breakers:
@@ -22564,13 +22613,14 @@ paths:
22564
22613
  properties:
22565
22614
  ice_breakers:
22566
22615
  type: array
22616
+ minItems: 1
22567
22617
  maxItems: 4
22568
22618
  items:
22569
22619
  type: object
22570
22620
  required: [question, payload]
22571
22621
  properties:
22572
- question: { type: string, maxLength: 80 }
22573
- payload: { type: string }
22622
+ question: { type: string, minLength: 1, maxLength: 80 }
22623
+ payload: { type: string, minLength: 1 }
22574
22624
  responses:
22575
22625
  '200':
22576
22626
  description: Ice breakers set successfully
@@ -22591,6 +22641,7 @@ paths:
22591
22641
  responses:
22592
22642
  '200':
22593
22643
  description: Ice breakers deleted
22644
+ '400': { $ref: '#/components/responses/BadRequest' }
22594
22645
  '401': { $ref: '#/components/responses/Unauthorized' }
22595
22646
 
22596
22647
  /v1/accounts/{accountId}/telegram-commands:
@@ -22618,8 +22669,8 @@ paths:
22618
22669
  items:
22619
22670
  type: object
22620
22671
  properties:
22621
- command: { type: string }
22622
- description: { type: string }
22672
+ command: { type: string, minLength: 1, maxLength: 32, pattern: '^[a-z0-9_]+$' }
22673
+ description: { type: string, minLength: 1, maxLength: 256 }
22623
22674
  '400':
22624
22675
  description: Not a Telegram account
22625
22676
  '401': { $ref: '#/components/responses/Unauthorized' }
@@ -22644,12 +22695,13 @@ paths:
22644
22695
  properties:
22645
22696
  commands:
22646
22697
  type: array
22698
+ maxItems: 100
22647
22699
  items:
22648
22700
  type: object
22649
22701
  required: [command, description]
22650
22702
  properties:
22651
- command: { type: string, description: Bot command without leading slash }
22652
- description: { type: string, description: Command description }
22703
+ command: { type: string, minLength: 1, maxLength: 32, pattern: '^[a-z0-9_]+$', description: Bot command without leading slash }
22704
+ description: { type: string, minLength: 1, maxLength: 256, description: Command description }
22653
22705
  responses:
22654
22706
  '200':
22655
22707
  description: Commands set successfully
@@ -22670,6 +22722,7 @@ paths:
22670
22722
  responses:
22671
22723
  '200':
22672
22724
  description: Commands deleted
22725
+ '400': { $ref: '#/components/responses/BadRequest' }
22673
22726
  '401': { $ref: '#/components/responses/Unauthorized' }
22674
22727
 
22675
22728
  /v1/inbox/comments:
@@ -34689,15 +34742,14 @@ paths:
34689
34742
  for `goal: conversions`.
34690
34743
 
34691
34744
  **TikTok:** an `optimization_event` code (UPPER_SNAKE, not Meta's vocabulary
34692
- and not PascalCase). Must be one of the event types your TikTok Pixel is
34693
- configured to track; passed through verbatim and validated by TikTok.
34694
- Newer pixels (Events API / funnel-template setups) use TikTok's updated
34695
- taxonomy, e.g. `SHOPPING` for purchase/payment events; legacy pixels use
34696
- codes like `ON_WEB_ORDER` (Complete Payment), `INITIATE_ORDER` (Place an
34697
- Order), `ON_WEB_CART` (Add to Cart), `ON_WEB_REGISTER` (Complete
34698
- Registration), `FORM` (Submit Form), `ON_WEB_DETAIL` (View Content).
34699
- On rejection the error lists the event types your pixel actually tracks.
34700
- Optional for `goal: conversions`.
34745
+ and not PascalCase), OR the exact event name shown in TikTok Events Manager
34746
+ (auto-resolved to its code). Must be one of the event types your TikTok
34747
+ Pixel tracks; custom events are not optimizable. Current taxonomy:
34748
+ `SHOPPING` (Purchase), `ON_WEB_CART` (Add to Cart), `INITIATE_ORDER`
34749
+ (Initiate Checkout), `FORM` (Lead), `ON_WEB_REGISTER` (Complete
34750
+ Registration), `ON_WEB_DETAIL` (View Content). `ON_WEB_ORDER` is
34751
+ deprecated. On rejection the error lists the event types your pixel
34752
+ actually tracks. Optional for `goal: conversions`.
34701
34753
  pageId:
34702
34754
  type: string
34703
34755
  description: |
@@ -276,7 +276,7 @@ describe 'AnalyticsApi' do
276
276
  # @param urn The LinkedIn post URN
277
277
  # @param [Hash] opts the optional parameters
278
278
  # @option opts [Integer] :limit Maximum number of reactions to return per page
279
- # @option opts [String] :cursor Offset-based pagination start index
279
+ # @option opts [Integer] :cursor Offset-based pagination start index
280
280
  # @return [GetLinkedInPostReactions200Response]
281
281
  describe 'get_linked_in_post_reactions test' do
282
282
  it 'should work' do
@@ -494,7 +494,7 @@ describe 'ConnectApi' do
494
494
  # @param account_id
495
495
  # @param update_linked_in_organization_request
496
496
  # @param [Hash] opts the optional parameters
497
- # @return [ConnectBlueskyCredentials200Response]
497
+ # @return [UpdateLinkedInOrganization200Response]
498
498
  describe 'update_linked_in_organization test' do
499
499
  it 'should work' do
500
500
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -34,7 +34,7 @@ describe 'GMBMediaApi' do
34
34
 
35
35
  # unit tests for create_google_business_media
36
36
  # Upload photo
37
- # Creates a media item (photo) for a location from a publicly accessible URL. Categories determine where the photo appears: COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, FOOD_AND_DRINK, MENU, PRODUCT, TEAMS, ADDITIONAL.
37
+ # Creates a media item (photo) for a location from a publicly accessible URL. Categories determine where the photo appears: CATEGORY_UNSPECIFIED, COVER, PROFILE, LOGO, EXTERIOR, INTERIOR, PRODUCT, FOOD_AND_DRINK, MENU, COMMON_AREA, ROOMS, TEAMS, AT_WORK, ADDITIONAL.
38
38
  # @param account_id
39
39
  # @param create_google_business_media_request
40
40
  # @param [Hash] opts the optional parameters
@@ -52,7 +52,7 @@ describe Zernio::CreateGoogleBusinessMediaRequest do
52
52
  describe 'test attribute "category"' do
53
53
  it 'should work' do
54
54
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
55
- # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["COVER", "PROFILE", "LOGO", "EXTERIOR", "INTERIOR", "FOOD_AND_DRINK", "MENU", "PRODUCT", "TEAMS", "ADDITIONAL"])
55
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["CATEGORY_UNSPECIFIED", "COVER", "PROFILE", "LOGO", "EXTERIOR", "INTERIOR", "PRODUCT", "FOOD_AND_DRINK", "MENU", "COMMON_AREA", "ROOMS", "TEAMS", "AT_WORK", "ADDITIONAL"])
56
56
  # validator.allowable_values.each do |value|
57
57
  # expect { instance.category = value }.not_to raise_error
58
58
  # end
@@ -36,6 +36,10 @@ describe Zernio::FoodMenuItemAttributes do
36
36
  describe 'test attribute "spiciness"' do
37
37
  it 'should work' do
38
38
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["SPICINESS_UNSPECIFIED", "MILD", "MEDIUM", "HOT"])
40
+ # validator.allowable_values.each do |value|
41
+ # expect { instance.spiciness = value }.not_to raise_error
42
+ # end
39
43
  end
40
44
  end
41
45
 
@@ -0,0 +1,60 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
5
+
6
+ The version of the OpenAPI document: 1.0.4
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Zernio::SelectLinkedInOrganizationRequestSelectedOrganization
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Zernio::SelectLinkedInOrganizationRequestSelectedOrganization do
21
+ #let(:instance) { Zernio::SelectLinkedInOrganizationRequestSelectedOrganization.new }
22
+
23
+ describe 'test an instance of SelectLinkedInOrganizationRequestSelectedOrganization' do
24
+ it 'should create an instance of SelectLinkedInOrganizationRequestSelectedOrganization' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Zernio::SelectLinkedInOrganizationRequestSelectedOrganization)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "id"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "urn"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ describe 'test attribute "name"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
48
+ describe 'test attribute "logo_url"' do
49
+ it 'should work' do
50
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
51
+ end
52
+ end
53
+
54
+ describe 'test attribute "vanity_name"' do
55
+ it 'should work' do
56
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
57
+ end
58
+ end
59
+
60
+ end
@@ -39,4 +39,10 @@ describe Zernio::UpdateGmbLocationRequest do
39
39
  end
40
40
  end
41
41
 
42
+ describe 'test attribute "account_id"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
42
48
  end
@@ -33,6 +33,16 @@ describe Zernio::UpdateGoogleBusinessAttributesRequestAttributesInner do
33
33
  end
34
34
  end
35
35
 
36
+ describe 'test attribute "value_type"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ # validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["ATTRIBUTE_VALUE_TYPE_UNSPECIFIED", "BOOL", "ENUM", "URL", "REPEATED_ENUM"])
40
+ # validator.allowable_values.each do |value|
41
+ # expect { instance.value_type = value }.not_to raise_error
42
+ # end
43
+ end
44
+ end
45
+
36
46
  describe 'test attribute "values"' do
37
47
  it 'should work' do
38
48
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -45,4 +55,10 @@ describe Zernio::UpdateGoogleBusinessAttributesRequestAttributesInner do
45
55
  end
46
56
  end
47
57
 
58
+ describe 'test attribute "uri_values"' do
59
+ it 'should work' do
60
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
61
+ end
62
+ end
63
+
48
64
  end