ultracart_api 4.1.199 → 4.1.201

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 (45) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +28 -2
  3. data/docs/SfvbApi.md +578 -13
  4. data/docs/SfvbApprovalCreateRequest.md +6 -0
  5. data/docs/SfvbApprovalParams.md +23 -3
  6. data/docs/SfvbContainerVersion.md +1 -1
  7. data/docs/SfvbEvent.md +28 -0
  8. data/docs/SfvbEventsAuthRequest.md +18 -0
  9. data/docs/SfvbEventsAuthResponse.md +22 -0
  10. data/docs/SfvbEventsResponse.md +22 -0
  11. data/docs/SfvbI18nMessageValue.md +1 -1
  12. data/docs/SfvbItemAttributeBatchRequest.md +20 -0
  13. data/docs/SfvbItemAttributeBatchResponse.md +40 -0
  14. data/docs/SfvbItemAttributeBatchRow.md +30 -0
  15. data/docs/SfvbItemAttributeBatchRowResult.md +36 -0
  16. data/docs/SfvbItemPricing.md +38 -0
  17. data/docs/SfvbItemPricingRequest.md +32 -0
  18. data/docs/SfvbItemRelated.md +28 -0
  19. data/docs/SfvbItemRelatedItem.md +22 -0
  20. data/docs/SfvbItemRelatedRequest.md +22 -0
  21. data/docs/SfvbItemVolumeDiscount.md +20 -0
  22. data/docs/SfvbThemeJobResponse.md +3 -3
  23. data/lib/ultracart_api/api/sfvb_api.rb +831 -72
  24. data/lib/ultracart_api/models/sfvb_approval_create_request.rb +33 -3
  25. data/lib/ultracart_api/models/sfvb_approval_params.rb +142 -6
  26. data/lib/ultracart_api/models/sfvb_container_version.rb +1 -1
  27. data/lib/ultracart_api/models/sfvb_event.rb +270 -0
  28. data/lib/ultracart_api/models/sfvb_events_auth_request.rb +222 -0
  29. data/lib/ultracart_api/models/sfvb_events_auth_response.rb +240 -0
  30. data/lib/ultracart_api/models/sfvb_events_response.rb +242 -0
  31. data/lib/ultracart_api/models/sfvb_i18n_message_value.rb +1 -1
  32. data/lib/ultracart_api/models/sfvb_item_attribute_batch_request.rb +232 -0
  33. data/lib/ultracart_api/models/sfvb_item_attribute_batch_response.rb +332 -0
  34. data/lib/ultracart_api/models/sfvb_item_attribute_batch_row.rb +280 -0
  35. data/lib/ultracart_api/models/sfvb_item_attribute_batch_row_result.rb +344 -0
  36. data/lib/ultracart_api/models/sfvb_item_pricing.rb +322 -0
  37. data/lib/ultracart_api/models/sfvb_item_pricing_request.rb +292 -0
  38. data/lib/ultracart_api/models/sfvb_item_related.rb +272 -0
  39. data/lib/ultracart_api/models/sfvb_item_related_item.rb +274 -0
  40. data/lib/ultracart_api/models/sfvb_item_related_request.rb +242 -0
  41. data/lib/ultracart_api/models/sfvb_item_volume_discount.rb +230 -0
  42. data/lib/ultracart_api/models/sfvb_theme_job_response.rb +3 -3
  43. data/lib/ultracart_api/version.rb +1 -1
  44. data/lib/ultracart_api.rb +14 -0
  45. metadata +30 -2
data/docs/SfvbApi.md CHANGED
@@ -29,6 +29,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
29
29
  | [**disable_sfvb_upsell_offer**](SfvbApi.md#disable_sfvb_upsell_offer) | **POST** /sfvb/storefronts/{storefront_oid}/upsell_offers/{upsell_offer_oid}/disable | Disable an upsell offer |
30
30
  | [**disable_sfvb_upsell_path**](SfvbApi.md#disable_sfvb_upsell_path) | **POST** /sfvb/storefronts/{storefront_oid}/upsell_paths/{upsell_path_oid}/disable | Disable an upsell path |
31
31
  | [**download_sfvb_file**](SfvbApi.md#download_sfvb_file) | **GET** /sfvb/storefronts/{storefront_oid}/files/download | Read a storefront file's raw bytes |
32
+ | [**dry_run_sfvb_item_attribute_batch**](SfvbApi.md#dry_run_sfvb_item_attribute_batch) | **POST** /sfvb/storefronts/{storefront_oid}/items/attributes/batch/dry_run | Check attribute changes across many items without writing them |
32
33
  | [**dry_run_sfvb_redirect_delete**](SfvbApi.md#dry_run_sfvb_redirect_delete) | **POST** /sfvb/storefronts/{storefront_oid}/redirects/delete/dry_run | Check a batch delete of redirect rules without writing it |
33
34
  | [**dry_run_sfvb_redirect_import**](SfvbApi.md#dry_run_sfvb_redirect_import) | **POST** /sfvb/storefronts/{storefront_oid}/redirects/import/dry_run | Check a redirect import without writing it |
34
35
  | [**duplicate_sfvb_library_entry**](SfvbApi.md#duplicate_sfvb_library_entry) | **POST** /sfvb/storefronts/{storefront_oid}/library/{library_oid}/duplicate | Copy a library entry into a new private entry |
@@ -37,6 +38,8 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
37
38
  | [**duplicate_sfvb_upsell_offer**](SfvbApi.md#duplicate_sfvb_upsell_offer) | **POST** /sfvb/storefronts/{storefront_oid}/upsell_offers/{upsell_offer_oid}/duplicate | Duplicate an upsell offer |
38
39
  | [**duplicate_sfvb_upsell_path**](SfvbApi.md#duplicate_sfvb_upsell_path) | **POST** /sfvb/storefronts/{storefront_oid}/upsell_paths/{upsell_path_oid}/duplicate | Duplicate an upsell path or one of its variations |
39
40
  | [**enable_sfvb_i18n_language**](SfvbApi.md#enable_sfvb_i18n_language) | **POST** /sfvb/storefronts/{storefront_oid}/i18n/languages/{code}/enable | Enable a language |
41
+ | [**enable_sfvb_upsell_offer**](SfvbApi.md#enable_sfvb_upsell_offer) | **POST** /sfvb/storefronts/{storefront_oid}/upsell_offers/{upsell_offer_oid}/enable | Enable an upsell offer |
42
+ | [**enable_sfvb_upsell_path**](SfvbApi.md#enable_sfvb_upsell_path) | **POST** /sfvb/storefronts/{storefront_oid}/upsell_paths/{upsell_path_oid}/enable | Enable an upsell path |
40
43
  | [**end_sfvb_experiment**](SfvbApi.md#end_sfvb_experiment) | **POST** /sfvb/storefronts/{storefront_oid}/experiments/{experiment_oid}/end | End an experiment |
41
44
  | [**favorite_sfvb_library_entry**](SfvbApi.md#favorite_sfvb_library_entry) | **PUT** /sfvb/storefronts/{storefront_oid}/library/{library_oid}/favorite | Favorite a library entry |
42
45
  | [**get_sfvb_approval**](SfvbApi.md#get_sfvb_approval) | **GET** /sfvb/approvals/{approval_id} | Read one approval request |
@@ -46,6 +49,8 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
46
49
  | [**get_sfvb_container**](SfvbApi.md#get_sfvb_container) | **GET** /sfvb/storefronts/{storefront_oid}/containers/{owner_type}/{owner_object_id} | Read a container stored outside the file system |
47
50
  | [**get_sfvb_container_version**](SfvbApi.md#get_sfvb_container_version) | **GET** /sfvb/storefronts/{storefront_oid}/container_versions/{container_history_oid} | Read the CJSON stored in one container history entry |
48
51
  | [**get_sfvb_element**](SfvbApi.md#get_sfvb_element) | **GET** /sfvb/elements/{element_type} | Configuration schema and field card for one element type |
52
+ | [**get_sfvb_events**](SfvbApi.md#get_sfvb_events) | **GET** /sfvb/events | Replay events |
53
+ | [**get_sfvb_events_authorization**](SfvbApi.md#get_sfvb_events_authorization) | **PUT** /sfvb/events/auth | Open the event stream |
49
54
  | [**get_sfvb_experiment**](SfvbApi.md#get_sfvb_experiment) | **GET** /sfvb/storefronts/{storefront_oid}/experiments/{experiment_oid} | Read one experiment and its statistics |
50
55
  | [**get_sfvb_experiment_objectives**](SfvbApi.md#get_sfvb_experiment_objectives) | **GET** /sfvb/storefronts/{storefront_oid}/experiments/objectives | List the objectives an experiment can optimize |
51
56
  | [**get_sfvb_file_content**](SfvbApi.md#get_sfvb_file_content) | **GET** /sfvb/storefronts/{storefront_oid}/files/content | Read a storefront file |
@@ -56,6 +61,8 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
56
61
  | [**get_sfvb_i18n_message**](SfvbApi.md#get_sfvb_i18n_message) | **GET** /sfvb/storefronts/{storefront_oid}/i18n/messages/{key} | Read one built-in message |
57
62
  | [**get_sfvb_i18n_message_machine_translations**](SfvbApi.md#get_sfvb_i18n_message_machine_translations) | **GET** /sfvb/storefronts/{storefront_oid}/i18n/messages/{key}/machine_translations | Read where a message's translations come from |
58
63
  | [**get_sfvb_item**](SfvbApi.md#get_sfvb_item) | **GET** /sfvb/storefronts/{storefront_oid}/items | Read an item's storefront facing content |
64
+ | [**get_sfvb_item_pricing**](SfvbApi.md#get_sfvb_item_pricing) | **GET** /sfvb/storefronts/{storefront_oid}/items/pricing | Read what an item charges |
65
+ | [**get_sfvb_item_related**](SfvbApi.md#get_sfvb_item_related) | **GET** /sfvb/storefronts/{storefront_oid}/items/related | Read an item's related items |
59
66
  | [**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 |
60
67
  | [**get_sfvb_library_history**](SfvbApi.md#get_sfvb_library_history) | **GET** /sfvb/storefronts/{storefront_oid}/library/{library_oid}/history | List a library entry's published revisions |
61
68
  | [**get_sfvb_library_share_targets**](SfvbApi.md#get_sfvb_library_share_targets) | **GET** /sfvb/storefronts/{storefront_oid}/library/share_targets | List the accounts a library entry can be shared with |
@@ -120,6 +127,8 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
120
127
  | [**put_sfvb_item_attributes**](SfvbApi.md#put_sfvb_item_attributes) | **PUT** /sfvb/storefronts/{storefront_oid}/items/attributes | Change some of an item's attributes |
121
128
  | [**put_sfvb_item_content**](SfvbApi.md#put_sfvb_item_content) | **PUT** /sfvb/storefronts/{storefront_oid}/items/content | Change an item's title or long description |
122
129
  | [**put_sfvb_item_multimedia**](SfvbApi.md#put_sfvb_item_multimedia) | **PUT** /sfvb/storefronts/{storefront_oid}/items/multimedia | Attach an image to an item |
130
+ | [**put_sfvb_item_pricing**](SfvbApi.md#put_sfvb_item_pricing) | **PUT** /sfvb/storefronts/{storefront_oid}/items/pricing | Change what an item charges |
131
+ | [**put_sfvb_item_related**](SfvbApi.md#put_sfvb_item_related) | **PUT** /sfvb/storefronts/{storefront_oid}/items/related | Replace an item's related items |
123
132
  | [**put_sfvb_item_seo**](SfvbApi.md#put_sfvb_item_seo) | **PUT** /sfvb/storefronts/{storefront_oid}/items/seo | Change an item's search metadata |
124
133
  | [**put_sfvb_menu**](SfvbApi.md#put_sfvb_menu) | **PUT** /sfvb/storefronts/{storefront_oid}/menus/{code} | Replace a store menu's entries |
125
134
  | [**put_sfvb_page_attributes**](SfvbApi.md#put_sfvb_page_attributes) | **PUT** /sfvb/storefronts/{storefront_oid}/pages/attributes | Change a page's attributes |
@@ -151,6 +160,7 @@ All URIs are relative to *https://secure.ultracart.com/rest/v2*
151
160
  | [**unpublish_sfvb_library_entry**](SfvbApi.md#unpublish_sfvb_library_entry) | **POST** /sfvb/storefronts/{storefront_oid}/library/{library_oid}/unpublish | Narrow who can see a library entry |
152
161
  | [**unshare_sfvb_library_entry**](SfvbApi.md#unshare_sfvb_library_entry) | **DELETE** /sfvb/storefronts/{storefront_oid}/library/{library_oid}/shares/{merchant_id} | Stop sharing a library entry with an account |
153
162
  | [**update_sfvb_blog_post**](SfvbApi.md#update_sfvb_blog_post) | **PUT** /sfvb/storefronts/{storefront_oid}/blog_posts/{blog_post_oid} | Change a blog post |
163
+ | [**update_sfvb_item_attribute_batch**](SfvbApi.md#update_sfvb_item_attribute_batch) | **POST** /sfvb/storefronts/{storefront_oid}/items/attributes/batch | Change attributes across many items in one call |
154
164
  | [**update_sfvb_library_entry**](SfvbApi.md#update_sfvb_library_entry) | **PUT** /sfvb/storefronts/{storefront_oid}/library/{library_oid} | Update a library entry's draft |
155
165
  | [**update_sfvb_redirect**](SfvbApi.md#update_sfvb_redirect) | **PUT** /sfvb/storefronts/{storefront_oid}/redirects/{redirect_id} | Change a redirect rule |
156
166
  | [**update_sfvb_upsell_offer**](SfvbApi.md#update_sfvb_upsell_offer) | **PUT** /sfvb/storefronts/{storefront_oid}/upsell_offers/{upsell_offer_oid} | Update an upsell offer |
@@ -1526,6 +1536,60 @@ nil (empty response body)
1526
1536
  - **Accept**: application/octet-stream
1527
1537
 
1528
1538
 
1539
+ ## dry_run_sfvb_item_attribute_batch
1540
+
1541
+ > <SfvbItemAttributeBatchResponse> dry_run_sfvb_item_attribute_batch(storefront_oid, item_attribute_batch_request)
1542
+
1543
+ Check attribute changes across many items without writing them
1544
+
1545
+ Checks up to 2,000 rows on up to 200 items, each with the single attribute update's checks, and answers every row as change, unchanged, stale (expected_value differs from the current value), not_found or invalid, with the current value and its current_sha256, plus a plan_hash over the change rows. Writes nothing. SEO attributes are refused; a batch never touches them or any attribute it does not name.
1546
+
1547
+
1548
+ ### Examples
1549
+
1550
+
1551
+ (No example for this operation).
1552
+
1553
+
1554
+ #### Using the dry_run_sfvb_item_attribute_batch_with_http_info variant
1555
+
1556
+ This returns an Array which contains the response data, status code and headers.
1557
+
1558
+ > <Array(<SfvbItemAttributeBatchResponse>, Integer, Hash)> dry_run_sfvb_item_attribute_batch_with_http_info(storefront_oid, item_attribute_batch_request)
1559
+
1560
+ ```ruby
1561
+ begin
1562
+ # Check attribute changes across many items without writing them
1563
+ data, status_code, headers = api_instance.dry_run_sfvb_item_attribute_batch_with_http_info(storefront_oid, item_attribute_batch_request)
1564
+ p status_code # => 2xx
1565
+ p headers # => { ... }
1566
+ p data # => <SfvbItemAttributeBatchResponse>
1567
+ rescue UltracartClient::ApiError => e
1568
+ puts "Error when calling SfvbApi->dry_run_sfvb_item_attribute_batch_with_http_info: #{e}"
1569
+ end
1570
+ ```
1571
+
1572
+ ### Parameters
1573
+
1574
+ | Name | Type | Description | Notes |
1575
+ | ---- | ---- | ----------- | ----- |
1576
+ | **storefront_oid** | **Integer** | | |
1577
+ | **item_attribute_batch_request** | [**SfvbItemAttributeBatchRequest**](SfvbItemAttributeBatchRequest.md) | The rows | |
1578
+
1579
+ ### Return type
1580
+
1581
+ [**SfvbItemAttributeBatchResponse**](SfvbItemAttributeBatchResponse.md)
1582
+
1583
+ ### Authorization
1584
+
1585
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
1586
+
1587
+ ### HTTP request headers
1588
+
1589
+ - **Content-Type**: application/json; charset=UTF-8
1590
+ - **Accept**: application/json
1591
+
1592
+
1529
1593
  ## dry_run_sfvb_redirect_delete
1530
1594
 
1531
1595
  > <SfvbRedirectDeleteResponse> dry_run_sfvb_redirect_delete(storefront_oid, redirect_delete_request)
@@ -1963,13 +2027,123 @@ end
1963
2027
  - **Accept**: application/json
1964
2028
 
1965
2029
 
2030
+ ## enable_sfvb_upsell_offer
2031
+
2032
+ > <SfvbUpsellOffer> enable_sfvb_upsell_offer(storefront_oid, upsell_offer_oid, opts)
2033
+
2034
+ Enable an upsell offer
2035
+
2036
+ Switches the offer on. The only way to switch one on - create and update refuse active true on an offer that is off. Needs sfvb_publish and the approval of the person who signed in the CLI, an approved upsell.enable request for this offer (see POST /sfvb/approvals). An offer that is already on is returned unchanged, and no approval is used.
2037
+
2038
+
2039
+ ### Examples
2040
+
2041
+
2042
+ (No example for this operation).
2043
+
2044
+
2045
+ #### Using the enable_sfvb_upsell_offer_with_http_info variant
2046
+
2047
+ This returns an Array which contains the response data, status code and headers.
2048
+
2049
+ > <Array(<SfvbUpsellOffer>, Integer, Hash)> enable_sfvb_upsell_offer_with_http_info(storefront_oid, upsell_offer_oid, opts)
2050
+
2051
+ ```ruby
2052
+ begin
2053
+ # Enable an upsell offer
2054
+ data, status_code, headers = api_instance.enable_sfvb_upsell_offer_with_http_info(storefront_oid, upsell_offer_oid, opts)
2055
+ p status_code # => 2xx
2056
+ p headers # => { ... }
2057
+ p data # => <SfvbUpsellOffer>
2058
+ rescue UltracartClient::ApiError => e
2059
+ puts "Error when calling SfvbApi->enable_sfvb_upsell_offer_with_http_info: #{e}"
2060
+ end
2061
+ ```
2062
+
2063
+ ### Parameters
2064
+
2065
+ | Name | Type | Description | Notes |
2066
+ | ---- | ---- | ----------- | ----- |
2067
+ | **storefront_oid** | **Integer** | | |
2068
+ | **upsell_offer_oid** | **Integer** | | |
2069
+ | **approval_id** | **String** | The approval_id of an approved upsell.enable request for this offer. Required when the offer is off. See POST /sfvb/approvals. | [optional] |
2070
+
2071
+ ### Return type
2072
+
2073
+ [**SfvbUpsellOffer**](SfvbUpsellOffer.md)
2074
+
2075
+ ### Authorization
2076
+
2077
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
2078
+
2079
+ ### HTTP request headers
2080
+
2081
+ - **Content-Type**: Not defined
2082
+ - **Accept**: application/json
2083
+
2084
+
2085
+ ## enable_sfvb_upsell_path
2086
+
2087
+ > <SfvbUpsellPath> enable_sfvb_upsell_path(storefront_oid, upsell_path_oid, opts)
2088
+
2089
+ Enable an upsell path
2090
+
2091
+ Switches the path on, so it starts running. The only way to switch one on - create, update and unarchive refuse to. An archived path is refused; unarchive it first. Needs sfvb_publish and the approval of the person who signed in the CLI, an approved upsell.enable request for this path (see POST /sfvb/approvals). A path that is already on is returned unchanged, and no approval is used.
2092
+
2093
+
2094
+ ### Examples
2095
+
2096
+
2097
+ (No example for this operation).
2098
+
2099
+
2100
+ #### Using the enable_sfvb_upsell_path_with_http_info variant
2101
+
2102
+ This returns an Array which contains the response data, status code and headers.
2103
+
2104
+ > <Array(<SfvbUpsellPath>, Integer, Hash)> enable_sfvb_upsell_path_with_http_info(storefront_oid, upsell_path_oid, opts)
2105
+
2106
+ ```ruby
2107
+ begin
2108
+ # Enable an upsell path
2109
+ data, status_code, headers = api_instance.enable_sfvb_upsell_path_with_http_info(storefront_oid, upsell_path_oid, opts)
2110
+ p status_code # => 2xx
2111
+ p headers # => { ... }
2112
+ p data # => <SfvbUpsellPath>
2113
+ rescue UltracartClient::ApiError => e
2114
+ puts "Error when calling SfvbApi->enable_sfvb_upsell_path_with_http_info: #{e}"
2115
+ end
2116
+ ```
2117
+
2118
+ ### Parameters
2119
+
2120
+ | Name | Type | Description | Notes |
2121
+ | ---- | ---- | ----------- | ----- |
2122
+ | **storefront_oid** | **Integer** | | |
2123
+ | **upsell_path_oid** | **Integer** | | |
2124
+ | **approval_id** | **String** | The approval_id of an approved upsell.enable request for this path. Required when the path is off. See POST /sfvb/approvals. | [optional] |
2125
+
2126
+ ### Return type
2127
+
2128
+ [**SfvbUpsellPath**](SfvbUpsellPath.md)
2129
+
2130
+ ### Authorization
2131
+
2132
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
2133
+
2134
+ ### HTTP request headers
2135
+
2136
+ - **Content-Type**: Not defined
2137
+ - **Accept**: application/json
2138
+
2139
+
1966
2140
  ## end_sfvb_experiment
1967
2141
 
1968
2142
  > <SfvbExperiment> end_sfvb_experiment(storefront_oid, experiment_oid, opts)
1969
2143
 
1970
2144
  End an experiment
1971
2145
 
1972
- Ends a running experiment. With winner_variation_number the winner gets every visitor, including visitors already assigned to another variation, and a page experiment's winning content is promoted into the page by the completion job on its next run, which also emails the merchant. Without a winner a page experiment's id is cleared from its page body so the page shows variation 0, and a url experiment sends everyone to variation 0. Always needs sfvb_publish.
2146
+ Ends a running experiment. With winner_variation_number the winner gets every visitor, including visitors already assigned to another variation, and a page experiment's winning content is promoted into the page by the completion job on its next run, which also emails the merchant. Without a winner a page experiment's id is cleared from its page body so the page shows variation 0, and a url experiment sends everyone to variation 0. Always needs sfvb_publish, and the approval of the person who signed in the CLI - an approved experiment.end request for this experiment and winner. An end with a winner always needs a fresh authenticator code; an end without a winner can be covered by the person's approval session (see POST /sfvb/approvals).
1973
2147
 
1974
2148
 
1975
2149
  ### Examples
@@ -2002,6 +2176,7 @@ end
2002
2176
  | ---- | ---- | ----------- | ----- |
2003
2177
  | **storefront_oid** | **Integer** | | |
2004
2178
  | **experiment_oid** | **Integer** | | |
2179
+ | **approval_id** | **String** | The approval_id of an approved experiment.end request for this experiment and winner. Required. See POST /sfvb/approvals. | [optional] |
2005
2180
  | **experiment_end_request** | [**SfvbExperimentEndRequest**](SfvbExperimentEndRequest.md) | The winner, if any | [optional] |
2006
2181
 
2007
2182
  ### Return type
@@ -2447,6 +2622,114 @@ end
2447
2622
  - **Accept**: application/json
2448
2623
 
2449
2624
 
2625
+ ## get_sfvb_events
2626
+
2627
+ > <SfvbEventsResponse> get_sfvb_events(opts)
2628
+
2629
+ Replay events
2630
+
2631
+ The signed-in person's events after the cursor, oldest first. Events are kept 72 hours; an older cursor returns resync_required, and then the caller re-lists what it was waiting on. Events about one sign-in's requests, such as approvals, are only returned to that sign-in. limit is 1 to 500, default 100.
2632
+
2633
+
2634
+ ### Examples
2635
+
2636
+
2637
+ (No example for this operation).
2638
+
2639
+
2640
+ #### Using the get_sfvb_events_with_http_info variant
2641
+
2642
+ This returns an Array which contains the response data, status code and headers.
2643
+
2644
+ > <Array(<SfvbEventsResponse>, Integer, Hash)> get_sfvb_events_with_http_info(opts)
2645
+
2646
+ ```ruby
2647
+ begin
2648
+ # Replay events
2649
+ data, status_code, headers = api_instance.get_sfvb_events_with_http_info(opts)
2650
+ p status_code # => 2xx
2651
+ p headers # => { ... }
2652
+ p data # => <SfvbEventsResponse>
2653
+ rescue UltracartClient::ApiError => e
2654
+ puts "Error when calling SfvbApi->get_sfvb_events_with_http_info: #{e}"
2655
+ end
2656
+ ```
2657
+
2658
+ ### Parameters
2659
+
2660
+ | Name | Type | Description | Notes |
2661
+ | ---- | ---- | ----------- | ----- |
2662
+ | **after** | **String** | Return events after this event_id. Leave it out for every event kept. | [optional] |
2663
+ | **storefront_oid** | **Integer** | Only events about this storefront, plus merchant-level ones. | [optional] |
2664
+ | **limit** | **Integer** | At most this many events, 1 to 500. | [optional] |
2665
+
2666
+ ### Return type
2667
+
2668
+ [**SfvbEventsResponse**](SfvbEventsResponse.md)
2669
+
2670
+ ### Authorization
2671
+
2672
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
2673
+
2674
+ ### HTTP request headers
2675
+
2676
+ - **Content-Type**: Not defined
2677
+ - **Accept**: application/json
2678
+
2679
+
2680
+ ## get_sfvb_events_authorization
2681
+
2682
+ > <SfvbEventsAuthResponse> get_sfvb_events_authorization(opts)
2683
+
2684
+ Open the event stream
2685
+
2686
+ Returns a websocket URL and a single-use token, valid for 5 minutes, for the signed-in person's event stream. Events are thin hints, type and ids only, and the stream is at most once. Re-read the object before acting, and after every reconnect replay from the last event_id with GET events. Send ping messages to keep the connection open, and reconnect with a new token before two hours. Requires a token that resolves to a user, so use the device authorization flow.
2687
+
2688
+
2689
+ ### Examples
2690
+
2691
+
2692
+ (No example for this operation).
2693
+
2694
+
2695
+ #### Using the get_sfvb_events_authorization_with_http_info variant
2696
+
2697
+ This returns an Array which contains the response data, status code and headers.
2698
+
2699
+ > <Array(<SfvbEventsAuthResponse>, Integer, Hash)> get_sfvb_events_authorization_with_http_info(opts)
2700
+
2701
+ ```ruby
2702
+ begin
2703
+ # Open the event stream
2704
+ data, status_code, headers = api_instance.get_sfvb_events_authorization_with_http_info(opts)
2705
+ p status_code # => 2xx
2706
+ p headers # => { ... }
2707
+ p data # => <SfvbEventsAuthResponse>
2708
+ rescue UltracartClient::ApiError => e
2709
+ puts "Error when calling SfvbApi->get_sfvb_events_authorization_with_http_info: #{e}"
2710
+ end
2711
+ ```
2712
+
2713
+ ### Parameters
2714
+
2715
+ | Name | Type | Description | Notes |
2716
+ | ---- | ---- | ----------- | ----- |
2717
+ | **events_auth_request** | [**SfvbEventsAuthRequest**](SfvbEventsAuthRequest.md) | Optional storefront filter | [optional] |
2718
+
2719
+ ### Return type
2720
+
2721
+ [**SfvbEventsAuthResponse**](SfvbEventsAuthResponse.md)
2722
+
2723
+ ### Authorization
2724
+
2725
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
2726
+
2727
+ ### HTTP request headers
2728
+
2729
+ - **Content-Type**: application/json; charset=UTF-8
2730
+ - **Accept**: application/json
2731
+
2732
+
2450
2733
  ## get_sfvb_experiment
2451
2734
 
2452
2735
  > <SfvbExperiment> get_sfvb_experiment(storefront_oid, experiment_oid, opts)
@@ -2942,7 +3225,7 @@ end
2942
3225
 
2943
3226
  Read an item's storefront facing content
2944
3227
 
2945
- The attributes, images, title, description and search metadata a StoreFront element can render, reconciled against the templates behind the pages this item sits on. An attribute a template declares but nothing has set comes back present with an empty value, which is how you discover what the page is asking for. Pricing, shipping, inventory, tax, variants and kit structure are not here because no element reads them; use the item API for those. Address by merchant_item_id, the value data-context-item-id carries, or by merchant_item_oid.
3228
+ The attributes, images, title, description and search metadata a StoreFront element can render, reconciled against the templates behind the pages this item sits on. An attribute a template declares but nothing has set comes back present with an empty value, which is how you discover what the page is asking for. Pricing and related items have their own calls, items/pricing and items/related. Shipping, inventory, tax, variants and kit structure stay with the item API. Address by merchant_item_id, the value data-context-item-id carries, or by merchant_item_oid.
2946
3229
 
2947
3230
 
2948
3231
  ### Examples
@@ -2991,6 +3274,116 @@ end
2991
3274
  - **Accept**: application/json
2992
3275
 
2993
3276
 
3277
+ ## get_sfvb_item_pricing
3278
+
3279
+ > <SfvbItemPricing> get_sfvb_item_pricing(storefront_oid, opts)
3280
+
3281
+ Read what an item charges
3282
+
3283
+ Price, sale (with whether it applies now), MSRP and retail volume pricing - what itemprice, itemsale, itemmsrp, itemsavings and itemvolumediscounts render - with a hash_sha256 to send as If-Match when changing it. Wholesale pricing tiers are not shown. Address by merchant_item_id or merchant_item_oid.
3284
+
3285
+
3286
+ ### Examples
3287
+
3288
+
3289
+ (No example for this operation).
3290
+
3291
+
3292
+ #### Using the get_sfvb_item_pricing_with_http_info variant
3293
+
3294
+ This returns an Array which contains the response data, status code and headers.
3295
+
3296
+ > <Array(<SfvbItemPricing>, Integer, Hash)> get_sfvb_item_pricing_with_http_info(storefront_oid, opts)
3297
+
3298
+ ```ruby
3299
+ begin
3300
+ # Read what an item charges
3301
+ data, status_code, headers = api_instance.get_sfvb_item_pricing_with_http_info(storefront_oid, opts)
3302
+ p status_code # => 2xx
3303
+ p headers # => { ... }
3304
+ p data # => <SfvbItemPricing>
3305
+ rescue UltracartClient::ApiError => e
3306
+ puts "Error when calling SfvbApi->get_sfvb_item_pricing_with_http_info: #{e}"
3307
+ end
3308
+ ```
3309
+
3310
+ ### Parameters
3311
+
3312
+ | Name | Type | Description | Notes |
3313
+ | ---- | ---- | ----------- | ----- |
3314
+ | **storefront_oid** | **Integer** | | |
3315
+ | **merchant_item_id** | **String** | | [optional] |
3316
+ | **merchant_item_oid** | **Integer** | | [optional] |
3317
+
3318
+ ### Return type
3319
+
3320
+ [**SfvbItemPricing**](SfvbItemPricing.md)
3321
+
3322
+ ### Authorization
3323
+
3324
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
3325
+
3326
+ ### HTTP request headers
3327
+
3328
+ - **Content-Type**: Not defined
3329
+ - **Accept**: application/json
3330
+
3331
+
3332
+ ## get_sfvb_item_related
3333
+
3334
+ > <SfvbItemRelated> get_sfvb_item_related(storefront_oid, opts)
3335
+
3336
+ Read an item's related items
3337
+
3338
+ What itemrelateditemslist lists - the merchant's own related items (user, addon, complementary) and the ones UltraCart calculates (system), with a hash_sha256 to send as If-Match when changing them.
3339
+
3340
+
3341
+ ### Examples
3342
+
3343
+
3344
+ (No example for this operation).
3345
+
3346
+
3347
+ #### Using the get_sfvb_item_related_with_http_info variant
3348
+
3349
+ This returns an Array which contains the response data, status code and headers.
3350
+
3351
+ > <Array(<SfvbItemRelated>, Integer, Hash)> get_sfvb_item_related_with_http_info(storefront_oid, opts)
3352
+
3353
+ ```ruby
3354
+ begin
3355
+ # Read an item's related items
3356
+ data, status_code, headers = api_instance.get_sfvb_item_related_with_http_info(storefront_oid, opts)
3357
+ p status_code # => 2xx
3358
+ p headers # => { ... }
3359
+ p data # => <SfvbItemRelated>
3360
+ rescue UltracartClient::ApiError => e
3361
+ puts "Error when calling SfvbApi->get_sfvb_item_related_with_http_info: #{e}"
3362
+ end
3363
+ ```
3364
+
3365
+ ### Parameters
3366
+
3367
+ | Name | Type | Description | Notes |
3368
+ | ---- | ---- | ----------- | ----- |
3369
+ | **storefront_oid** | **Integer** | | |
3370
+ | **merchant_item_id** | **String** | | [optional] |
3371
+ | **merchant_item_oid** | **Integer** | | [optional] |
3372
+
3373
+ ### Return type
3374
+
3375
+ [**SfvbItemRelated**](SfvbItemRelated.md)
3376
+
3377
+ ### Authorization
3378
+
3379
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
3380
+
3381
+ ### HTTP request headers
3382
+
3383
+ - **Content-Type**: Not defined
3384
+ - **Accept**: application/json
3385
+
3386
+
2994
3387
  ## get_sfvb_library_entry
2995
3388
 
2996
3389
  > <SfvbLibraryEntry> get_sfvb_library_entry(storefront_oid, library_oid, opts)
@@ -3319,7 +3712,7 @@ end
3319
3712
 
3320
3713
  List the paths that answered 404
3321
3714
 
3322
- The paths shoppers asked for that answered 404, most hits first or by last_seen. Paths only, never query strings. Bots are left out unless include_bots. Token-like path segments show as {token} unless include_tokens. limit is 1 to 100, default 50.
3715
+ The paths shoppers asked for that answered 404, most hits first or by last_seen. Paths only, never query strings. Bots are left out unless include_bots. Token-like path segments show as {token} unless include_tokens. A path stays listed after a redirect rule catches it, with redirected_to set. redirected=false lists only paths no rule catches yet, and redirected=true only those one does. limit is 1 to 100, default 50.
3323
3716
 
3324
3717
 
3325
3718
  ### Examples
@@ -3357,6 +3750,7 @@ end
3357
3750
  | **include_tokens** | **Boolean** | | [optional] |
3358
3751
  | **q** | **String** | | [optional] |
3359
3752
  | **limit** | **Integer** | | [optional] |
3753
+ | **redirected** | **Boolean** | | [optional] |
3360
3754
 
3361
3755
  ### Return type
3362
3756
 
@@ -4895,7 +5289,7 @@ end
4895
5289
 
4896
5290
  Create an upsell offer
4897
5291
 
4898
- Every item it names must exist, and every shipping method, payment method and loyalty tier must be one the merchant has. Put it on a path with a path update to have it shown. Creating it switched on, or with upsell_item_id_javascript or offsite_content_url, needs sfvb_publish. Its page content is its container, written with the container endpoints and owner type upsell.
5292
+ Every item it names must exist, and every shipping method, payment method and loyalty tier must be one the merchant has. Put it on a path with a path update to have it shown. It must be created with active false, and switched on with the enable call, which needs approval. upsell_item_id_javascript or offsite_content_url needs sfvb_publish. Its page content is its container, written with the container endpoints and owner type upsell.
4899
5293
 
4900
5294
 
4901
5295
  ### Examples
@@ -4949,7 +5343,7 @@ end
4949
5343
 
4950
5344
  Create an upsell path
4951
5345
 
4952
- Placed last in path order. Every offer a step names must be an offer of this storefront, and every item in the item logic must exist. Creating it switched on needs sfvb_publish; create it with active false to build it without that scope.
5346
+ Placed last in path order. Every offer a step names must be an offer of this storefront, and every item in the item logic must exist. It must be created with active false, and switched on with the enable call, which needs approval.
4953
5347
 
4954
5348
 
4955
5349
  ### Examples
@@ -6281,7 +6675,7 @@ end
6281
6675
 
6282
6676
  Change one built-in message
6283
6677
 
6284
- Sets one message in any number of languages. ENG replaces the English, which drops its machine translations so they regenerate. Any other language becomes a hand translation. Languages not named are left alone; empty text is refused. Shoppers see it at once. Always needs sfvb_publish.
6678
+ Sets one message in any number of languages. ENG replaces the English, which drops its machine translations so they regenerate. Any other language becomes a hand translation. Languages not named are left alone. Empty text removes that language's translation so machine translation fills it again (not allowed for ENG); it is the undo for an imported message, which can't be reset. Shoppers see it at once. Always needs sfvb_publish.
6285
6679
 
6286
6680
 
6287
6681
  ### Examples
@@ -6500,6 +6894,121 @@ end
6500
6894
  - **Accept**: application/json
6501
6895
 
6502
6896
 
6897
+ ## put_sfvb_item_pricing
6898
+
6899
+ > <SfvbItemPricing> put_sfvb_item_pricing(storefront_oid, if_match, item_pricing_request, opts)
6900
+
6901
+ Change what an item charges
6902
+
6903
+ Partial - a field left out is untouched. A sale needs sale_cost, sale_start and sale_end together, the end after the start; clear_sale removes it. msrp must be more than 0 (0 only when the price is 0); clear_msrp removes it. volume_discounts replaces the retail quantity breaks. Shoppers pay the new price at once, so this needs sfvb_publish, If-Match with the pricing hash_sha256, and the approval of the person who signed in the CLI - an approved item.pricing request for this item and exactly this change. A change that sets every field to what it already is returns the pricing unchanged and uses no approval.
6904
+
6905
+
6906
+ ### Examples
6907
+
6908
+
6909
+ (No example for this operation).
6910
+
6911
+
6912
+ #### Using the put_sfvb_item_pricing_with_http_info variant
6913
+
6914
+ This returns an Array which contains the response data, status code and headers.
6915
+
6916
+ > <Array(<SfvbItemPricing>, Integer, Hash)> put_sfvb_item_pricing_with_http_info(storefront_oid, if_match, item_pricing_request, opts)
6917
+
6918
+ ```ruby
6919
+ begin
6920
+ # Change what an item charges
6921
+ data, status_code, headers = api_instance.put_sfvb_item_pricing_with_http_info(storefront_oid, if_match, item_pricing_request, opts)
6922
+ p status_code # => 2xx
6923
+ p headers # => { ... }
6924
+ p data # => <SfvbItemPricing>
6925
+ rescue UltracartClient::ApiError => e
6926
+ puts "Error when calling SfvbApi->put_sfvb_item_pricing_with_http_info: #{e}"
6927
+ end
6928
+ ```
6929
+
6930
+ ### Parameters
6931
+
6932
+ | Name | Type | Description | Notes |
6933
+ | ---- | ---- | ----------- | ----- |
6934
+ | **storefront_oid** | **Integer** | | |
6935
+ | **if_match** | **String** | hash_sha256 from the pricing read. Required; 428 when absent, 412 when stale. | |
6936
+ | **item_pricing_request** | [**SfvbItemPricingRequest**](SfvbItemPricingRequest.md) | The change | |
6937
+ | **merchant_item_id** | **String** | | [optional] |
6938
+ | **merchant_item_oid** | **Integer** | | [optional] |
6939
+ | **approval_id** | **String** | The approval_id of an approved item.pricing request for this item and change. Required. See POST /sfvb/approvals. | [optional] |
6940
+
6941
+ ### Return type
6942
+
6943
+ [**SfvbItemPricing**](SfvbItemPricing.md)
6944
+
6945
+ ### Authorization
6946
+
6947
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
6948
+
6949
+ ### HTTP request headers
6950
+
6951
+ - **Content-Type**: application/json; charset=UTF-8
6952
+ - **Accept**: application/json
6953
+
6954
+
6955
+ ## put_sfvb_item_related
6956
+
6957
+ > <SfvbItemRelated> put_sfvb_item_related(storefront_oid, if_match, item_related_request, opts)
6958
+
6959
+ Replace an item's related items
6960
+
6961
+ Replaces the merchant's own related items, in order, and keeps the ones UltraCart calculates. Each must be an item of this account and not the item itself, named once, up to 50. No link back is added to the other items. Needs sfvb_publish and If-Match with the related hash_sha256.
6962
+
6963
+
6964
+ ### Examples
6965
+
6966
+
6967
+ (No example for this operation).
6968
+
6969
+
6970
+ #### Using the put_sfvb_item_related_with_http_info variant
6971
+
6972
+ This returns an Array which contains the response data, status code and headers.
6973
+
6974
+ > <Array(<SfvbItemRelated>, Integer, Hash)> put_sfvb_item_related_with_http_info(storefront_oid, if_match, item_related_request, opts)
6975
+
6976
+ ```ruby
6977
+ begin
6978
+ # Replace an item's related items
6979
+ data, status_code, headers = api_instance.put_sfvb_item_related_with_http_info(storefront_oid, if_match, item_related_request, opts)
6980
+ p status_code # => 2xx
6981
+ p headers # => { ... }
6982
+ p data # => <SfvbItemRelated>
6983
+ rescue UltracartClient::ApiError => e
6984
+ puts "Error when calling SfvbApi->put_sfvb_item_related_with_http_info: #{e}"
6985
+ end
6986
+ ```
6987
+
6988
+ ### Parameters
6989
+
6990
+ | Name | Type | Description | Notes |
6991
+ | ---- | ---- | ----------- | ----- |
6992
+ | **storefront_oid** | **Integer** | | |
6993
+ | **if_match** | **String** | hash_sha256 from the related read. Required; 428 when absent, 412 when stale. | |
6994
+ | **item_related_request** | [**SfvbItemRelatedRequest**](SfvbItemRelatedRequest.md) | The related items | |
6995
+ | **merchant_item_id** | **String** | | [optional] |
6996
+ | **merchant_item_oid** | **Integer** | | [optional] |
6997
+
6998
+ ### Return type
6999
+
7000
+ [**SfvbItemRelated**](SfvbItemRelated.md)
7001
+
7002
+ ### Authorization
7003
+
7004
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
7005
+
7006
+ ### HTTP request headers
7007
+
7008
+ - **Content-Type**: application/json; charset=UTF-8
7009
+ - **Accept**: application/json
7010
+
7011
+
6503
7012
  ## put_sfvb_item_seo
6504
7013
 
6505
7014
  > <SfvbItemResponse> put_sfvb_item_seo(storefront_oid, item_seo_request, opts)
@@ -7827,11 +8336,11 @@ end
7827
8336
 
7828
8337
  ## start_sfvb_experiment
7829
8338
 
7830
- > <SfvbExperiment> start_sfvb_experiment(storefront_oid, experiment_start_request)
8339
+ > <SfvbExperiment> start_sfvb_experiment(storefront_oid, experiment_start_request, opts)
7831
8340
 
7832
8341
  Start an experiment
7833
8342
 
7834
- type page starts an experiment element already saved in a page body - send path, slot and widget_id, and its name, objective, duration and variations are read from the element with the builder's rules (2 to 5 variations numbered 0 up with no gaps, 3 to 90 days, traffic on all or none adding up to 100). The new id is written into the element and the body is saved, so pull it again before the next edit. type url splits visitors between existing pages at router_url, and always ends by itself after duration_days. Always needs sfvb_publish, because visitors are split as soon as it starts.
8343
+ type page starts an experiment element already saved in a page body - send path, slot and widget_id, and its name, objective, duration and variations are read from the element with the builder's rules (2 to 5 variations numbered 0 up with no gaps, 3 to 90 days, traffic on all or none adding up to 100). The new id is written into the element and the body is saved, so pull it again before the next edit. type url splits visitors between existing pages at router_url, and always ends by itself after duration_days. Always needs sfvb_publish, because visitors are split as soon as it starts, and the approval of the person who signed in the CLI - an approved experiment.start request for exactly this start (see POST /sfvb/approvals).
7835
8344
 
7836
8345
 
7837
8346
  ### Examples
@@ -7844,12 +8353,12 @@ type page starts an experiment element already saved in a page body - send path,
7844
8353
 
7845
8354
  This returns an Array which contains the response data, status code and headers.
7846
8355
 
7847
- > <Array(<SfvbExperiment>, Integer, Hash)> start_sfvb_experiment_with_http_info(storefront_oid, experiment_start_request)
8356
+ > <Array(<SfvbExperiment>, Integer, Hash)> start_sfvb_experiment_with_http_info(storefront_oid, experiment_start_request, opts)
7848
8357
 
7849
8358
  ```ruby
7850
8359
  begin
7851
8360
  # Start an experiment
7852
- data, status_code, headers = api_instance.start_sfvb_experiment_with_http_info(storefront_oid, experiment_start_request)
8361
+ data, status_code, headers = api_instance.start_sfvb_experiment_with_http_info(storefront_oid, experiment_start_request, opts)
7853
8362
  p status_code # => 2xx
7854
8363
  p headers # => { ... }
7855
8364
  p data # => <SfvbExperiment>
@@ -7864,6 +8373,7 @@ end
7864
8373
  | ---- | ---- | ----------- | ----- |
7865
8374
  | **storefront_oid** | **Integer** | | |
7866
8375
  | **experiment_start_request** | [**SfvbExperimentStartRequest**](SfvbExperimentStartRequest.md) | The experiment to start | |
8376
+ | **approval_id** | **String** | The approval_id of an approved experiment.start request for exactly this start. Required. See POST /sfvb/approvals. | [optional] |
7867
8377
 
7868
8378
  ### Return type
7869
8379
 
@@ -7885,7 +8395,7 @@ end
7885
8395
 
7886
8396
  Unarchive an upsell path
7887
8397
 
7888
- Brings the path back into the default list. Unarchiving one that is switched on starts it, so that needs sfvb_publish.
8398
+ Brings the path back into the default list. A path that is switched on is refused, because unarchiving it would start it without approval - disable it, unarchive it, then enable it.
7889
8399
 
7890
8400
 
7891
8401
  ### Examples
@@ -8206,6 +8716,61 @@ end
8206
8716
  - **Accept**: application/json
8207
8717
 
8208
8718
 
8719
+ ## update_sfvb_item_attribute_batch
8720
+
8721
+ > <SfvbItemAttributeBatchResponse> update_sfvb_item_attribute_batch(storefront_oid, item_attribute_batch_request, opts)
8722
+
8723
+ Change attributes across many items in one call
8724
+
8725
+ Applies exactly the change rows of a dry run, given its plan_hash, each with its merchant_item_oid and current_sha256. Each item is saved once with all of its rows; a row whose value changed since the dry run is skipped as stale and never overwritten, and an item that cannot be saved does not stop the others. Only the named attributes change. Needs sfvb_publish and the approval of the person who signed in the CLI, an approved item.attribute_batch request for exactly these rows in the Approval-Id header.
8726
+
8727
+
8728
+ ### Examples
8729
+
8730
+
8731
+ (No example for this operation).
8732
+
8733
+
8734
+ #### Using the update_sfvb_item_attribute_batch_with_http_info variant
8735
+
8736
+ This returns an Array which contains the response data, status code and headers.
8737
+
8738
+ > <Array(<SfvbItemAttributeBatchResponse>, Integer, Hash)> update_sfvb_item_attribute_batch_with_http_info(storefront_oid, item_attribute_batch_request, opts)
8739
+
8740
+ ```ruby
8741
+ begin
8742
+ # Change attributes across many items in one call
8743
+ data, status_code, headers = api_instance.update_sfvb_item_attribute_batch_with_http_info(storefront_oid, item_attribute_batch_request, opts)
8744
+ p status_code # => 2xx
8745
+ p headers # => { ... }
8746
+ p data # => <SfvbItemAttributeBatchResponse>
8747
+ rescue UltracartClient::ApiError => e
8748
+ puts "Error when calling SfvbApi->update_sfvb_item_attribute_batch_with_http_info: #{e}"
8749
+ end
8750
+ ```
8751
+
8752
+ ### Parameters
8753
+
8754
+ | Name | Type | Description | Notes |
8755
+ | ---- | ---- | ----------- | ----- |
8756
+ | **storefront_oid** | **Integer** | | |
8757
+ | **item_attribute_batch_request** | [**SfvbItemAttributeBatchRequest**](SfvbItemAttributeBatchRequest.md) | The dry run&#39;s change rows and plan_hash | |
8758
+ | **approval_id** | **String** | The approval_id of an approved item.attribute_batch request for exactly these rows. Required. See POST /sfvb/approvals. | [optional] |
8759
+
8760
+ ### Return type
8761
+
8762
+ [**SfvbItemAttributeBatchResponse**](SfvbItemAttributeBatchResponse.md)
8763
+
8764
+ ### Authorization
8765
+
8766
+ [ultraCartOauth](../README.md#ultraCartOauth), [ultraCartSimpleApiKey](../README.md#ultraCartSimpleApiKey)
8767
+
8768
+ ### HTTP request headers
8769
+
8770
+ - **Content-Type**: application/json; charset=UTF-8
8771
+ - **Accept**: application/json
8772
+
8773
+
8209
8774
  ## update_sfvb_library_entry
8210
8775
 
8211
8776
  > <SfvbLibraryEntry> update_sfvb_library_entry(storefront_oid, library_oid, if_match, library_entry)
@@ -8324,7 +8889,7 @@ end
8324
8889
 
8325
8890
  Update an upsell offer
8326
8891
 
8327
- A full replace. Send back the whole offer you read, changed, with its hash_sha256 in If-Match. Read only fields are ignored and a writable field left out is cleared. Changing an offer that is switched on, switching one on, or changing upsell_item_id_javascript or offsite_content_url needs sfvb_publish. Settings the API does not show, such as the offer's screenshots, are kept.
8892
+ A full replace. Send back the whole offer you read, changed, with its hash_sha256 in If-Match. Read only fields are ignored and a writable field left out is cleared. Changing an offer that is switched on, or changing upsell_item_id_javascript or offsite_content_url, needs sfvb_publish. An update cannot switch an offer on; that is the enable call, which needs approval. Settings the API does not show, such as the offer's screenshots, are kept.
8328
8893
 
8329
8894
 
8330
8895
  ### Examples
@@ -8380,7 +8945,7 @@ end
8380
8945
 
8381
8946
  Update an upsell path
8382
8947
 
8383
- A full replace. Send back the whole path you read, changed, with its hash_sha256 in If-Match. Read only fields are ignored and a writable field left out is cleared. Order and archived keep their stored values; change them with the move, archive and unarchive calls. Changing a running path, or switching one on, needs sfvb_publish.
8948
+ A full replace. Send back the whole path you read, changed, with its hash_sha256 in If-Match. Read only fields are ignored and a writable field left out is cleared. Order and archived keep their stored values; change them with the move, archive and unarchive calls. Changing a running path needs sfvb_publish. An update cannot switch a path on; that is the enable call, which needs approval.
8384
8949
 
8385
8950
 
8386
8951
  ### Examples