ultracart_api 4.1.155 → 4.1.157

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 24314cf0f18fc69b1c86c36bf3286ae46d625958a18800271a20d225ec797a9c
4
- data.tar.gz: 03da8af5d356bdbe3d03ca56057f38a03deff2b2fe2a9cbe038666eb6a0cee54
3
+ metadata.gz: 9a92c02a477046100fa9bb81d90ce5912f2ef0f1f48683b51c98e34c1df71287
4
+ data.tar.gz: 9496625114b7bba219bc0198c389e5b84afcf52bb55704570f77db6122d24d36
5
5
  SHA512:
6
- metadata.gz: 2a3f15bff02873f539363351665d678ee06534356f44851f5415ac69c71212c2a15f71a4715d540d5894311392183c2ad2b10d0dcb2ebbb7e50d941ae74f7491
7
- data.tar.gz: f081572ef243c7c9690a7bc235763ae4249dc602005d36000326ff24d184ee7cda5e52f35297326149c3c951484e317ed2cdd52b4a60d86e63d2b9ccb39d5ce4
6
+ metadata.gz: fe801ea021b22c5d654b7f6e6ea21842c89a103d8923bb1ab65d33d14bfa4a03e105b34f4291734165736aa8ae14c9728e42d60aab45b0542b2319bb489adb32
7
+ data.tar.gz: cf281a37520c9c3885190f30e9c31e6367fa04e8c67512b413d81b3b3cb1c99bae3d12174bb4ffbad79a7ed84b8a8a0ee0bb4961addfdc3e8c7b9c1ddedab73c
data/README.md CHANGED
@@ -7,7 +7,7 @@ Note: Every method has a sample for every language. See https://github.com/Ultr
7
7
  This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
8
8
 
9
9
  - API version: 2.0.0
10
- - Package version: 4.1.155
10
+ - Package version: 4.1.157
11
11
  - Build package: org.openapitools.codegen.languages.RubyClientCodegen
12
12
  - For more information, please visit [http://www.ultracart.com/api/](http://www.ultracart.com/api/)
13
13
 
@@ -16,7 +16,7 @@ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-g
16
16
  gemfile:
17
17
 
18
18
  ```shell
19
- gem 'ultracart_api', '4.1.155'
19
+ gem 'ultracart_api', '4.1.157'
20
20
  ```
21
21
 
22
22
  install:
@@ -487,6 +487,8 @@ Class | Method | HTTP request | Description
487
487
  *UltracartClient::SfvbApi* | [**get_sfvb_file_content**](docs/SfvbApi.md#get_sfvb_file_content) | **GET** /sfvb/storefronts/{storefront_oid}/files/content | Read a storefront file
488
488
  *UltracartClient::SfvbApi* | [**get_sfvb_file_upload_url**](docs/SfvbApi.md#get_sfvb_file_upload_url) | **GET** /sfvb/storefronts/{storefront_oid}/files/upload_url/{extension} | Get a URL to upload a binary asset to
489
489
  *UltracartClient::SfvbApi* | [**get_sfvb_library_entry**](docs/SfvbApi.md#get_sfvb_library_entry) | **GET** /sfvb/storefronts/{storefront_oid}/library/{library_oid} | Read one library entry including its CJSON
490
+ *UltracartClient::SfvbApi* | [**get_sfvb_menu**](docs/SfvbApi.md#get_sfvb_menu) | **GET** /sfvb/storefronts/{storefront_oid}/menus/{code} | Read one store menu and its entries
491
+ *UltracartClient::SfvbApi* | [**get_sfvb_menus**](docs/SfvbApi.md#get_sfvb_menus) | **GET** /sfvb/storefronts/{storefront_oid}/menus | List a storefront's store menus
490
492
  *UltracartClient::SfvbApi* | [**get_sfvb_page**](docs/SfvbApi.md#get_sfvb_page) | **GET** /sfvb/storefronts/{storefront_oid}/pages | Read a page's attributes and images
491
493
  *UltracartClient::SfvbApi* | [**get_sfvb_preview_url**](docs/SfvbApi.md#get_sfvb_preview_url) | **GET** /sfvb/storefronts/{storefront_oid}/preview_sessions/{preview_session_id}/url | URL that renders a preview session
492
494
  *UltracartClient::SfvbApi* | [**get_sfvb_theme**](docs/SfvbApi.md#get_sfvb_theme) | **GET** /sfvb/storefronts/{storefront_oid}/themes/{theme_oid} | Get a theme
@@ -504,6 +506,7 @@ Class | Method | HTTP request | Description
504
506
  *UltracartClient::SfvbApi* | [**list_sfvb_upsell_offers**](docs/SfvbApi.md#list_sfvb_upsell_offers) | **GET** /sfvb/storefronts/{storefront_oid}/upsell_offers | List upsell offers
505
507
  *UltracartClient::SfvbApi* | [**put_sfvb_container**](docs/SfvbApi.md#put_sfvb_container) | **PUT** /sfvb/storefronts/{storefront_oid}/containers/{owner_type}/{owner_object_id} | Write a container stored outside the file system
506
508
  *UltracartClient::SfvbApi* | [**put_sfvb_file_content**](docs/SfvbApi.md#put_sfvb_file_content) | **PUT** /sfvb/storefronts/{storefront_oid}/files/content | Write a storefront file
509
+ *UltracartClient::SfvbApi* | [**put_sfvb_menu**](docs/SfvbApi.md#put_sfvb_menu) | **PUT** /sfvb/storefronts/{storefront_oid}/menus/{code} | Replace a store menu's entries
507
510
  *UltracartClient::SfvbApi* | [**put_sfvb_page_attributes**](docs/SfvbApi.md#put_sfvb_page_attributes) | **PUT** /sfvb/storefronts/{storefront_oid}/pages/attributes | Change a page's attributes
508
511
  *UltracartClient::SfvbApi* | [**put_sfvb_page_multimedia**](docs/SfvbApi.md#put_sfvb_page_multimedia) | **PUT** /sfvb/storefronts/{storefront_oid}/pages/multimedia | Attach an image to a page
509
512
  *UltracartClient::SfvbApi* | [**put_sfvb_preview_session**](docs/SfvbApi.md#put_sfvb_preview_session) | **PUT** /sfvb/storefronts/{storefront_oid}/preview_sessions/{preview_session_id} | Push containers into a preview session
@@ -1759,6 +1762,10 @@ Class | Method | HTTP request | Description
1759
1762
  - [UltracartClient::SfvbLibraryEntry](docs/SfvbLibraryEntry.md)
1760
1763
  - [UltracartClient::SfvbLibraryFacet](docs/SfvbLibraryFacet.md)
1761
1764
  - [UltracartClient::SfvbLibraryResponse](docs/SfvbLibraryResponse.md)
1765
+ - [UltracartClient::SfvbMenu](docs/SfvbMenu.md)
1766
+ - [UltracartClient::SfvbMenuItem](docs/SfvbMenuItem.md)
1767
+ - [UltracartClient::SfvbMenuWriteRequest](docs/SfvbMenuWriteRequest.md)
1768
+ - [UltracartClient::SfvbMenusResponse](docs/SfvbMenusResponse.md)
1762
1769
  - [UltracartClient::SfvbPageAttribute](docs/SfvbPageAttribute.md)
1763
1770
  - [UltracartClient::SfvbPageAttributeUpdate](docs/SfvbPageAttributeUpdate.md)
1764
1771
  - [UltracartClient::SfvbPageAttributeUpdateRequest](docs/SfvbPageAttributeUpdateRequest.md)
@@ -1955,6 +1962,8 @@ Not every change is committed to every SDK.
1955
1962
 
1956
1963
  | Version | Date | Comments |
1957
1964
  | --: | :-: | --- |
1965
+ | 4.1.157 | 09/18/2026 | sfvb internal testing |
1966
+ | 4.1.156 | 09/16/2026 | sfvb internal testing |
1958
1967
  | 4.1.155 | 09/15/2026 | sfvb internal testing |
1959
1968
  | 4.1.154 | 09/14/2026 | sfvb internal testing |
1960
1969
  | 4.1.153 | 09/14/2026 | sfvb internal testing |
data/docs/SfvbApi.md CHANGED
@@ -19,6 +19,8 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
19
19
  | [**get_sfvb_file_content**](SfvbApi.md#get_sfvb_file_content) | **GET** /sfvb/storefronts/{storefront_oid}/files/content | Read a storefront file |
20
20
  | [**get_sfvb_file_upload_url**](SfvbApi.md#get_sfvb_file_upload_url) | **GET** /sfvb/storefronts/{storefront_oid}/files/upload_url/{extension} | Get a URL to upload a binary asset to |
21
21
  | [**get_sfvb_library_entry**](SfvbApi.md#get_sfvb_library_entry) | **GET** /sfvb/storefronts/{storefront_oid}/library/{library_oid} | Read one library entry including its CJSON |
22
+ | [**get_sfvb_menu**](SfvbApi.md#get_sfvb_menu) | **GET** /sfvb/storefronts/{storefront_oid}/menus/{code} | Read one store menu and its entries |
23
+ | [**get_sfvb_menus**](SfvbApi.md#get_sfvb_menus) | **GET** /sfvb/storefronts/{storefront_oid}/menus | List a storefront's store menus |
22
24
  | [**get_sfvb_page**](SfvbApi.md#get_sfvb_page) | **GET** /sfvb/storefronts/{storefront_oid}/pages | Read a page's attributes and images |
23
25
  | [**get_sfvb_preview_url**](SfvbApi.md#get_sfvb_preview_url) | **GET** /sfvb/storefronts/{storefront_oid}/preview_sessions/{preview_session_id}/url | URL that renders a preview session |
24
26
  | [**get_sfvb_theme**](SfvbApi.md#get_sfvb_theme) | **GET** /sfvb/storefronts/{storefront_oid}/themes/{theme_oid} | Get a theme |
@@ -36,6 +38,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
36
38
  | [**list_sfvb_upsell_offers**](SfvbApi.md#list_sfvb_upsell_offers) | **GET** /sfvb/storefronts/{storefront_oid}/upsell_offers | List upsell offers |
37
39
  | [**put_sfvb_container**](SfvbApi.md#put_sfvb_container) | **PUT** /sfvb/storefronts/{storefront_oid}/containers/{owner_type}/{owner_object_id} | Write a container stored outside the file system |
38
40
  | [**put_sfvb_file_content**](SfvbApi.md#put_sfvb_file_content) | **PUT** /sfvb/storefronts/{storefront_oid}/files/content | Write a storefront file |
41
+ | [**put_sfvb_menu**](SfvbApi.md#put_sfvb_menu) | **PUT** /sfvb/storefronts/{storefront_oid}/menus/{code} | Replace a store menu's entries |
39
42
  | [**put_sfvb_page_attributes**](SfvbApi.md#put_sfvb_page_attributes) | **PUT** /sfvb/storefronts/{storefront_oid}/pages/attributes | Change a page's attributes |
40
43
  | [**put_sfvb_page_multimedia**](SfvbApi.md#put_sfvb_page_multimedia) | **PUT** /sfvb/storefronts/{storefront_oid}/pages/multimedia | Attach an image to a page |
41
44
  | [**put_sfvb_preview_session**](SfvbApi.md#put_sfvb_preview_session) | **PUT** /sfvb/storefronts/{storefront_oid}/preview_sessions/{preview_session_id} | Push containers into a preview session |
@@ -542,7 +545,7 @@ end
542
545
 
543
546
  Read a container stored outside the file system
544
547
 
545
- owner_type is one of upsell, email, postcardfront, postcardback or item. Item containers also require container_name. Theme and page containers are files; read those through files/content.
548
+ owner_type is one of upsell, email, postcardfront, postcardback, item or itemid. It also says how owner_object_id is read - item and upsell take an oid, itemid takes a merchant item id, and the rest take an esp uuid. itemid reaches the same containers as item and is the way to address one from a storefront, where data-context-item-id carries the merchant item id and the oid appears nowhere. Item containers also require container_name. Theme and page containers are files; read those through files/content.
546
549
 
547
550
 
548
551
  ### Examples
@@ -598,7 +601,7 @@ end
598
601
 
599
602
  Read the CJSON stored in one container history entry
600
603
 
601
- Inspect or diff an earlier version without reverting to it. The version is addressed through the container that owns it, so a history oid belonging to some other resource cannot be read through this route.
604
+ Inspect or diff an earlier version without reverting to it. The version is addressed through the container that owns it, so a history oid belonging to some other resource cannot be read through this route. owner_type also says how owner_object_id is read, and itemid addresses an item container by merchant item id.
602
605
 
603
606
 
604
607
  ### Examples
@@ -865,6 +868,113 @@ end
865
868
  - **Accept**: application/json
866
869
 
867
870
 
871
+ ## get_sfvb_menu
872
+
873
+ > <SfvbMenu> get_sfvb_menu(storefront_oid, code)
874
+
875
+ Read one store menu and its entries
876
+
877
+ The whole tree, in render order. Page entries carry the page_path they resolve to and item entries the merchant_item_id, rather than the oids the storage keeps. Menu item oids are not returned at all because a write regenerates every one of them. Keep hash_sha256 - it is the If-Match a write needs.
878
+
879
+
880
+ ### Examples
881
+
882
+
883
+ (No example for this operation).
884
+
885
+
886
+ #### Using the get_sfvb_menu_with_http_info variant
887
+
888
+ This returns an Array which contains the response data, status code and headers.
889
+
890
+ > <Array(<SfvbMenu>, Integer, Hash)> get_sfvb_menu_with_http_info(storefront_oid, code)
891
+
892
+ ```ruby
893
+ begin
894
+ # Read one store menu and its entries
895
+ data, status_code, headers = api_instance.get_sfvb_menu_with_http_info(storefront_oid, code)
896
+ p status_code # => 2xx
897
+ p headers # => { ... }
898
+ p data # => <SfvbMenu>
899
+ rescue UltracartClient::ApiError => e
900
+ puts "Error when calling SfvbApi->get_sfvb_menu_with_http_info: #{e}"
901
+ end
902
+ ```
903
+
904
+ ### Parameters
905
+
906
+ | Name | Type | Description | Notes |
907
+ | ---- | ---- | ----------- | ----- |
908
+ | **storefront_oid** | **Integer** | | |
909
+ | **code** | **String** | Menu code, matched without regard to case | |
910
+
911
+ ### Return type
912
+
913
+ [**SfvbMenu**](SfvbMenu.md)
914
+
915
+ ### Authorization
916
+
917
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
918
+
919
+ ### HTTP request headers
920
+
921
+ - **Content-Type**: Not defined
922
+ - **Accept**: application/json
923
+
924
+
925
+ ## get_sfvb_menus
926
+
927
+ > <SfvbMenusResponse> get_sfvb_menus(storefront_oid)
928
+
929
+ List a storefront's store menus
930
+
931
+ The menus a menu element's menuName can name, sorted by code and without their entries. A code the active theme's templates ask for but nothing has created is included with unconfigured true - that code renders an empty list today, and writing it creates it. A menu no template names is marked undeclared, which usually means a menuName is misspelled.
932
+
933
+
934
+ ### Examples
935
+
936
+
937
+ (No example for this operation).
938
+
939
+
940
+ #### Using the get_sfvb_menus_with_http_info variant
941
+
942
+ This returns an Array which contains the response data, status code and headers.
943
+
944
+ > <Array(<SfvbMenusResponse>, Integer, Hash)> get_sfvb_menus_with_http_info(storefront_oid)
945
+
946
+ ```ruby
947
+ begin
948
+ # List a storefront's store menus
949
+ data, status_code, headers = api_instance.get_sfvb_menus_with_http_info(storefront_oid)
950
+ p status_code # => 2xx
951
+ p headers # => { ... }
952
+ p data # => <SfvbMenusResponse>
953
+ rescue UltracartClient::ApiError => e
954
+ puts "Error when calling SfvbApi->get_sfvb_menus_with_http_info: #{e}"
955
+ end
956
+ ```
957
+
958
+ ### Parameters
959
+
960
+ | Name | Type | Description | Notes |
961
+ | ---- | ---- | ----------- | ----- |
962
+ | **storefront_oid** | **Integer** | | |
963
+
964
+ ### Return type
965
+
966
+ [**SfvbMenusResponse**](SfvbMenusResponse.md)
967
+
968
+ ### Authorization
969
+
970
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
971
+
972
+ ### HTTP request headers
973
+
974
+ - **Content-Type**: Not defined
975
+ - **Accept**: application/json
976
+
977
+
868
978
  ## get_sfvb_page
869
979
 
870
980
  > <SfvbPageResponse> get_sfvb_page(storefront_oid, path)
@@ -1296,6 +1406,8 @@ end
1296
1406
 
1297
1407
  Version history for a container stored outside the file system
1298
1408
 
1409
+ Addressed the same way as the container itself, so owner_type also says how owner_object_id is read and itemid lists the history of the item container that merchant item id names.
1410
+
1299
1411
 
1300
1412
  ### Examples
1301
1413
 
@@ -1667,7 +1779,7 @@ end
1667
1779
 
1668
1780
  Write a container stored outside the file system
1669
1781
 
1670
- Validation is mandatory and runs here regardless of whether the caller validated first. The previous value is snapshotted before the write, so the change can be reverted. Side effects the visual builder performs on save, such as upsell screenshot regeneration and email content review flagging, are applied too.
1782
+ Validation is mandatory and runs here regardless of whether the caller validated first. The previous value is snapshotted before the write, so the change can be reverted. Side effects the visual builder performs on save, such as upsell screenshot regeneration and email content review flagging, are applied too. owner_type also says how owner_object_id is read; send itemid to address an item container by merchant item id rather than by oid. Either way the history records the one canonical address, so a container written under one spelling is listed and reverted under the other.
1671
1783
 
1672
1784
 
1673
1785
  ### Examples
@@ -1775,6 +1887,62 @@ end
1775
1887
  - **Accept**: application/json
1776
1888
 
1777
1889
 
1890
+ ## put_sfvb_menu
1891
+
1892
+ > <SfvbMenu> put_sfvb_menu(storefront_oid, code, menu_write_request, opts)
1893
+
1894
+ Replace a store menu's entries
1895
+
1896
+ A whole menu replace, not a merge - what you send is what the menu holds afterwards, so read it, change the tree and send it back. Omitting items changes only the title; sending an empty array empties the menu. Writing a code that does not exist creates it. Every entry is checked before any of it is written, including that a merchant_item_id and a page_path actually resolve, so a tree with one bad entry changes nothing. Always needs sfvb_publish, because a menu is shared by every theme and there is no dormant copy to change instead.
1897
+
1898
+
1899
+ ### Examples
1900
+
1901
+
1902
+ (No example for this operation).
1903
+
1904
+
1905
+ #### Using the put_sfvb_menu_with_http_info variant
1906
+
1907
+ This returns an Array which contains the response data, status code and headers.
1908
+
1909
+ > <Array(<SfvbMenu>, Integer, Hash)> put_sfvb_menu_with_http_info(storefront_oid, code, menu_write_request, opts)
1910
+
1911
+ ```ruby
1912
+ begin
1913
+ # Replace a store menu's entries
1914
+ data, status_code, headers = api_instance.put_sfvb_menu_with_http_info(storefront_oid, code, menu_write_request, opts)
1915
+ p status_code # => 2xx
1916
+ p headers # => { ... }
1917
+ p data # => <SfvbMenu>
1918
+ rescue UltracartClient::ApiError => e
1919
+ puts "Error when calling SfvbApi->put_sfvb_menu_with_http_info: #{e}"
1920
+ end
1921
+ ```
1922
+
1923
+ ### Parameters
1924
+
1925
+ | Name | Type | Description | Notes |
1926
+ | ---- | ---- | ----------- | ----- |
1927
+ | **storefront_oid** | **Integer** | | |
1928
+ | **code** | **String** | Menu code, matched without regard to case | |
1929
+ | **menu_write_request** | [**SfvbMenuWriteRequest**](SfvbMenuWriteRequest.md) | The menu&#39;s replacement contents | |
1930
+ | **if_match** | **String** | Content hash from the last read. Required when the menu already exists; 428 when absent, 412 when stale. | [optional] |
1931
+
1932
+ ### Return type
1933
+
1934
+ [**SfvbMenu**](SfvbMenu.md)
1935
+
1936
+ ### Authorization
1937
+
1938
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
1939
+
1940
+ ### HTTP request headers
1941
+
1942
+ - **Content-Type**: application/json
1943
+ - **Accept**: application/json
1944
+
1945
+
1778
1946
  ## put_sfvb_page_attributes
1779
1947
 
1780
1948
  > <SfvbPageResponse> put_sfvb_page_attributes(storefront_oid, path, page_attribute_update_request)
@@ -2111,7 +2279,7 @@ end
2111
2279
 
2112
2280
  Revert a container stored outside the file system
2113
2281
 
2114
- The restore is itself snapshotted, so a revert can be undone in turn. Reverting to an entry recorded before the container existed removes it again. Addressed through the owning container and guarded by If-Match, because a revert overwrites live content just as much as an ordinary write does.
2282
+ The restore is itself snapshotted, so a revert can be undone in turn. Reverting to an entry recorded before the container existed removes it again. Addressed through the owning container and guarded by If-Match, because a revert overwrites live content just as much as an ordinary write does. owner_type also says how owner_object_id is read, so a version written by oid can be reverted by merchant item id and the other way round.
2115
2283
 
2116
2284
 
2117
2285
  ### Examples
@@ -8,6 +8,7 @@
8
8
  | **container_name** | **String** | Container name. | [optional] |
9
9
  | **hash_sha256** | **String** | SHA-256 of the cjson. Send back as If-Match when writing. | [optional] |
10
10
  | **last_modified** | **String** | When the container was last modified, in the store&#39;s own record of it. Every owner type reports this. It is absent only when the container has never been written since the store began recording it, so treat an absent value as unknown rather than as never modified. Two behaviours worth knowing. A postcard keeps one timestamp for both of its sides, so writing the front moves the value the back reports. An upsell container that is rewritten with byte identical content keeps its original date rather than moving to now, because the timestamp tracks changes to the container and not writes to the offer. | [optional] |
11
+ | **merchant_item_id** | **String** | The merchant item id of the owning item, for item containers only and absent for every other owner type. owner_object_id is the item oid, which appears nowhere on a rendered storefront, so this is how a caller confirms which item an oid actually reached. It is read fresh on every call and so reflects a renamed item. A container&#39;s own id embeds this value, which is what a preview session keys an item container on. | [optional] |
11
12
  | **owner_object_id** | **String** | Identifier of the owning object within its store. | [optional] |
12
13
  | **owner_type** | **String** | Where this container lives. | [optional] |
13
14
 
@@ -21,6 +22,7 @@ instance = UltracartClient::SfvbContainerResponse.new(
21
22
  container_name: null,
22
23
  hash_sha256: null,
23
24
  last_modified: null,
25
+ merchant_item_id: null,
24
26
  owner_object_id: null,
25
27
  owner_type: null
26
28
  )
data/docs/SfvbMenu.md ADDED
@@ -0,0 +1,30 @@
1
+ # UltracartClient::SfvbMenu
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **code** | **String** | The menu&#39;s code, which is the value a menu element&#39;s menuName refers to. Compare case insensitively. | [optional] |
8
+ | **hash_sha256** | **String** | Content hash of the menu as stored. Send it back as If-Match when writing. | [optional] |
9
+ | **item_count** | **Integer** | How many entries the menu holds in total, counting every level of the tree. | [optional] |
10
+ | **items** | [**Array&lt;SfvbMenuItem&gt;**](SfvbMenuItem.md) | The menu&#39;s entries, in the order they render. Omitted from the list endpoint, which returns each menu&#39;s identity and counts only. | [optional] |
11
+ | **title** | **String** | The menu&#39;s own label, shown in the store admin rather than on the storefront. Trimmed to 250 characters. | [optional] |
12
+ | **unconfigured** | **Boolean** | True when a template names this code but no menu has been created for it. Such a code renders an empty list today. Write it to create it. | [optional] |
13
+ | **undeclared** | **Boolean** | True when no template on the storefront names this code. The menu is stored and editable, but nothing renders it, which usually means a menu element&#39;s menuName is misspelled. | [optional] |
14
+
15
+ ## Example
16
+
17
+ ```ruby
18
+ require 'ultracart_api'
19
+
20
+ instance = UltracartClient::SfvbMenu.new(
21
+ code: null,
22
+ hash_sha256: null,
23
+ item_count: null,
24
+ items: null,
25
+ title: null,
26
+ unconfigured: null,
27
+ undeclared: null
28
+ )
29
+ ```
30
+
@@ -0,0 +1,36 @@
1
+ # UltracartClient::SfvbMenuItem
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **catalog_group_oid** | **Integer** | The catalog group page_path resolved to. Returned for reference and ignored on a write - send page_path, which is the identifier the rest of this API uses. | [optional] |
8
+ | **description** | **String** | The link text, and the only field every type needs. Required. | [optional] |
9
+ | **items** | [**Array&lt;SfvbMenuItem&gt;**](SfvbMenuItem.md) | This entry&#39;s sub menu, in the order it renders. Omit or send an empty array for a leaf. | [optional] |
10
+ | **merchant_item_id** | **String** | The item an item entry opens, by merchant item id rather than by oid. | [optional] |
11
+ | **open_in_new_window** | **Boolean** | True to open the link in a new window or tab. | [optional] |
12
+ | **page_path** | **String** | The page a page entry opens, normalized to begin and end with a slash. This is the same path the pages endpoints take. Sent on a write and returned on a read. | [optional] |
13
+ | **social_page_type** | **String** | Which social network a social entry opens. The URL comes from the storefront&#39;s social settings. | [optional] |
14
+ | **system_page_type** | **String** | Which built in page a system page entry opens. The storefront resolves the URL, so these keep working when the checkout or account paths change. | [optional] |
15
+ | **type** | **String** | What the entry points at, which decides which one of the other fields is required. custom needs url, item needs merchant_item_id, page needs page_path, social needs social_page_type, and system page needs system_page_type. The legacy spelling group is accepted and stored as page. | [optional] |
16
+ | **url** | **String** | Where a custom entry goes. Any URL the storefront can link to, absolute or site relative. | [optional] |
17
+
18
+ ## Example
19
+
20
+ ```ruby
21
+ require 'ultracart_api'
22
+
23
+ instance = UltracartClient::SfvbMenuItem.new(
24
+ catalog_group_oid: null,
25
+ description: null,
26
+ items: null,
27
+ merchant_item_id: null,
28
+ open_in_new_window: null,
29
+ page_path: null,
30
+ social_page_type: null,
31
+ system_page_type: null,
32
+ type: null,
33
+ url: null
34
+ )
35
+ ```
36
+
@@ -0,0 +1,20 @@
1
+ # UltracartClient::SfvbMenuWriteRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **items** | [**Array&lt;SfvbMenuItem&gt;**](SfvbMenuItem.md) | The entries the menu should hold, in render order. Omit to leave the entries alone and change only the title. | [optional] |
8
+ | **title** | **String** | The menu&#39;s label in the store admin. Trimmed to 250 characters. Leave it off to keep the current one. | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'ultracart_api'
14
+
15
+ instance = UltracartClient::SfvbMenuWriteRequest.new(
16
+ items: null,
17
+ title: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,18 @@
1
+ # UltracartClient::SfvbMenusResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **menus** | [**Array&lt;SfvbMenu&gt;**](SfvbMenu.md) | The storefront&#39;s menus, sorted by code. Entries are omitted here - read a single menu to get its tree. | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'ultracart_api'
13
+
14
+ instance = UltracartClient::SfvbMenusResponse.new(
15
+ menus: null
16
+ )
17
+ ```
18
+
@@ -8,7 +8,7 @@
8
8
  | **expires_in_seconds** | **Integer** | Seconds left to open access_url. It stops working after that, and after its first use. | [optional] |
9
9
  | **path** | **String** | Storefront path the browser lands on, after reserved preview parameters are removed. | [optional] |
10
10
  | **preview_session_id** | **String** | The preview session applied, when one was requested. | [optional] |
11
- | **session_lifetime_seconds** | **Integer** | How long the browser stays in preview once access_url is opened. The remaining life of the preview session, or eight hours when none was given. The user and their storefront permission are checked again on every page, so removing either ends it sooner. | [optional] |
11
+ | **session_lifetime_seconds** | **Integer** | How long the browser stays in preview once access_url is opened. The remaining life of the preview session, or eight hours when none was given. Ending the preview session ends preview in that browser at its next page. The user and their storefront permission are checked again on every page, so removing either ends it sooner. | [optional] |
12
12
  | **single_use** | **Boolean** | Always true. A second open of access_url returns 410. | [optional] |
13
13
  | **theme_oid** | **Integer** | The theme shown, when one was requested. | [optional] |
14
14
  | **usage_note** | **String** | Plain language instructions, safe to show a user. | [optional] |
@@ -11,6 +11,8 @@
11
11
  | **max_cjson_bytes** | **Integer** | Largest CJSON document that will be parsed, in bytes. | [optional] |
12
12
  | **max_directory_entries** | **Integer** | Most entries one directory listing returns. Asking for more is silently reduced to this rather than refused, so compare against it instead of trusting that you got what you asked for. The listing does set a truncated flag when it drops entries. | [optional] |
13
13
  | **max_library_results_per_page** | **Integer** | Most element library results one page returns. Asking for more is silently reduced to this, and unlike the directory listing there is no truncation flag on the response, so this number is the only way to know a larger request was cut. | [optional] |
14
+ | **max_menu_depth** | **Integer** | How deeply store menu entries can nest. | [optional] |
15
+ | **max_menu_items** | **Integer** | Most entries one store menu can hold, counting every level of the tree. A menu is navigation that renders on every page, so this is deliberately far below what the storage would physically accept. | [optional] |
14
16
  | **max_preview_session_bytes** | **Integer** | Largest payload one preview session may hold, in bytes. | [optional] |
15
17
  | **max_revertable_bytes** | **Integer** | Largest historical version files/revert will restore, in bytes. Higher than max_text_read_bytes deliberately - putting back a version that is already stored is cheaper than serving it as JSON, so a version too large to read can still be reverted to. | [optional] |
16
18
  | **max_search_results** | **Integer** | Hard ceiling on file search results per page. | [optional] |
@@ -34,6 +36,8 @@ instance = UltracartClient::SfvbVersionResponse.new(
34
36
  max_cjson_bytes: null,
35
37
  max_directory_entries: null,
36
38
  max_library_results_per_page: null,
39
+ max_menu_depth: null,
40
+ max_menu_items: null,
37
41
  max_preview_session_bytes: null,
38
42
  max_revertable_bytes: null,
39
43
  max_search_results: null,