zippendo 1.1.2 → 1.1.3

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 (194) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +11 -0
  3. data/docs/AddressesApi.md +5 -1
  4. data/docs/CarriersApi.md +5 -1
  5. data/docs/ConnectCarrierRequest.md +3 -1
  6. data/docs/CreateAddressRequest.md +3 -1
  7. data/docs/CreateOrgWebhook201Response.md +2 -0
  8. data/docs/CreateOrgWebhookRequest.md +3 -1
  9. data/docs/CreateShippingRule201Response.md +2 -0
  10. data/docs/CreateShippingRuleRequest.md +3 -1
  11. data/docs/GetBillingUsage200Response.md +3 -1
  12. data/docs/GetBillingUsage200ResponseZippyMessages.md +20 -0
  13. data/docs/ListAddresses200ResponseDataInner.md +2 -0
  14. data/docs/ListCarriers200ResponseDataInner.md +2 -0
  15. data/docs/ListOrgWebhooks200ResponseDataInner.md +2 -0
  16. data/docs/ListShipments200ResponseDataInnerAddress.md +2 -0
  17. data/docs/ListShippingRules200ResponseDataInner.md +2 -0
  18. data/docs/ListShippingRules200ResponseDataInnerCarrier.md +2 -0
  19. data/docs/OrdersApi.md +2 -0
  20. data/docs/RulesApi.md +5 -1
  21. data/docs/ShipmentsApi.md +3 -1
  22. data/docs/UpdateAddressRequest.md +3 -1
  23. data/docs/UpdateCarrierRequest.md +3 -1
  24. data/docs/UpdateOrgWebhookRequest.md +3 -1
  25. data/docs/UpdateShippingRuleRequest.md +3 -1
  26. data/docs/WebhooksApi.md +5 -1
  27. data/lib/zippendo/api/addresses_api.rb +11 -1
  28. data/lib/zippendo/api/billing_api.rb +1 -1
  29. data/lib/zippendo/api/brands_api.rb +1 -1
  30. data/lib/zippendo/api/carrier_catalog_api.rb +1 -1
  31. data/lib/zippendo/api/carriers_api.rb +11 -1
  32. data/lib/zippendo/api/orders_api.rb +8 -1
  33. data/lib/zippendo/api/orgs_api.rb +1 -1
  34. data/lib/zippendo/api/quotes_api.rb +1 -1
  35. data/lib/zippendo/api/rules_api.rb +11 -1
  36. data/lib/zippendo/api/shipments_api.rb +8 -1
  37. data/lib/zippendo/api/system_api.rb +1 -1
  38. data/lib/zippendo/api/tokens_api.rb +1 -1
  39. data/lib/zippendo/api/webhooks_api.rb +11 -1
  40. data/lib/zippendo/api_client.rb +1 -1
  41. data/lib/zippendo/api_error.rb +1 -1
  42. data/lib/zippendo/api_model_base.rb +1 -1
  43. data/lib/zippendo/configuration.rb +1 -1
  44. data/lib/zippendo/models/batch_send_shipments200_response.rb +1 -1
  45. data/lib/zippendo/models/batch_send_shipments200_response_results_inner.rb +3 -3
  46. data/lib/zippendo/models/batch_send_shipments200_response_summary.rb +1 -1
  47. data/lib/zippendo/models/batch_send_shipments_request.rb +1 -1
  48. data/lib/zippendo/models/batch_split_shipment201_response.rb +1 -1
  49. data/lib/zippendo/models/batch_split_shipment_request.rb +1 -1
  50. data/lib/zippendo/models/batch_split_shipment_request_shipments_inner.rb +1 -1
  51. data/lib/zippendo/models/batch_split_shipment_request_shipments_inner_order_lines_inner.rb +1 -1
  52. data/lib/zippendo/models/check_brand_slug200_response.rb +1 -1
  53. data/lib/zippendo/models/connect_carrier_request.rb +31 -5
  54. data/lib/zippendo/models/create_address_request.rb +31 -5
  55. data/lib/zippendo/models/create_api_token201_response.rb +1 -1
  56. data/lib/zippendo/models/create_api_token_request.rb +1 -1
  57. data/lib/zippendo/models/create_order201_response.rb +1 -1
  58. data/lib/zippendo/models/create_order201_response_order_lines_inner.rb +1 -1
  59. data/lib/zippendo/models/create_order201_response_shipping_address.rb +1 -1
  60. data/lib/zippendo/models/create_order_request.rb +1 -1
  61. data/lib/zippendo/models/create_order_request_order_lines_inner.rb +1 -1
  62. data/lib/zippendo/models/create_order_request_shipping_address.rb +1 -1
  63. data/lib/zippendo/models/create_org_brand_request.rb +1 -1
  64. data/lib/zippendo/models/create_org_webhook201_response.rb +15 -2
  65. data/lib/zippendo/models/create_org_webhook_request.rb +31 -5
  66. data/lib/zippendo/models/create_shipment201_response.rb +1 -1
  67. data/lib/zippendo/models/create_shipment201_response_activities_inner.rb +1 -1
  68. data/lib/zippendo/models/create_shipment201_response_documents_inner.rb +1 -1
  69. data/lib/zippendo/models/create_shipment201_response_errors_inner.rb +1 -1
  70. data/lib/zippendo/models/create_shipment201_response_logs_inner.rb +1 -1
  71. data/lib/zippendo/models/create_shipment201_response_parcels_inner.rb +1 -1
  72. data/lib/zippendo/models/create_shipment201_response_parcels_inner_dimensions.rb +1 -1
  73. data/lib/zippendo/models/create_shipment201_response_parcels_inner_order_lines_inner.rb +1 -1
  74. data/lib/zippendo/models/create_shipment201_response_parties_inner.rb +1 -1
  75. data/lib/zippendo/models/create_shipment201_response_parties_inner_attributes_inner.rb +1 -1
  76. data/lib/zippendo/models/create_shipment201_response_pickup_details.rb +1 -1
  77. data/lib/zippendo/models/create_shipment201_response_shipping_rule.rb +1 -1
  78. data/lib/zippendo/models/create_shipment201_response_tracking.rb +1 -1
  79. data/lib/zippendo/models/create_shipment_request.rb +1 -1
  80. data/lib/zippendo/models/create_shipment_request_carrier_settings.rb +1 -1
  81. data/lib/zippendo/models/create_shipment_request_parcels_inner.rb +1 -1
  82. data/lib/zippendo/models/create_shipment_request_parcels_inner_dimensions.rb +1 -1
  83. data/lib/zippendo/models/create_shipment_request_parcels_inner_order_lines_inner.rb +1 -1
  84. data/lib/zippendo/models/create_shipment_request_parties_inner.rb +1 -1
  85. data/lib/zippendo/models/create_shipment_request_parties_inner_attributes_inner.rb +1 -1
  86. data/lib/zippendo/models/create_shipment_request_pickup_details.rb +1 -1
  87. data/lib/zippendo/models/create_shipping_quote200_response.rb +1 -1
  88. data/lib/zippendo/models/create_shipping_quote200_response_rates_inner.rb +1 -1
  89. data/lib/zippendo/models/create_shipping_quote400_response.rb +1 -1
  90. data/lib/zippendo/models/create_shipping_quote404_response.rb +1 -1
  91. data/lib/zippendo/models/create_shipping_quote_request.rb +1 -1
  92. data/lib/zippendo/models/create_shipping_quote_request_destination.rb +1 -1
  93. data/lib/zippendo/models/create_shipping_quote_request_items_inner.rb +1 -1
  94. data/lib/zippendo/models/create_shipping_rule201_response.rb +15 -2
  95. data/lib/zippendo/models/create_shipping_rule_request.rb +31 -5
  96. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters_value.rb +1 -1
  97. data/lib/zippendo/models/create_shipping_rule_request_additional_parameters_value_any_of.rb +1 -1
  98. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner.rb +1 -1
  99. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of.rb +1 -1
  100. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of1.rb +1 -1
  101. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of2.rb +1 -1
  102. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of3.rb +1 -1
  103. data/lib/zippendo/models/create_shipping_rule_request_conditions_inner_one_of4.rb +1 -1
  104. data/lib/zippendo/models/delete_org_webhook200_response.rb +1 -1
  105. data/lib/zippendo/models/delete_shipping_rule200_response.rb +1 -1
  106. data/lib/zippendo/models/get_billing_usage200_response.rb +14 -5
  107. data/lib/zippendo/models/get_billing_usage200_response_add_ons_inner.rb +3 -3
  108. data/lib/zippendo/models/get_billing_usage200_response_current_period.rb +1 -1
  109. data/lib/zippendo/models/get_billing_usage200_response_limits.rb +1 -1
  110. data/lib/zippendo/models/get_billing_usage200_response_limits_team_members.rb +1 -1
  111. data/lib/zippendo/models/get_billing_usage200_response_shipments.rb +1 -1
  112. data/lib/zippendo/models/get_billing_usage200_response_zippy_messages.rb +193 -0
  113. data/lib/zippendo/models/get_order200_response.rb +1 -1
  114. data/lib/zippendo/models/get_order200_response_shipments_inner.rb +1 -1
  115. data/lib/zippendo/models/get_order200_response_shipping_rule.rb +1 -1
  116. data/lib/zippendo/models/get_org200_response.rb +1 -1
  117. data/lib/zippendo/models/get_org200_response_count.rb +1 -1
  118. data/lib/zippendo/models/get_org_branding200_response.rb +1 -1
  119. data/lib/zippendo/models/health_check200_response.rb +1 -1
  120. data/lib/zippendo/models/list_addresses200_response.rb +1 -1
  121. data/lib/zippendo/models/list_addresses200_response_data_inner.rb +15 -2
  122. data/lib/zippendo/models/list_api_tokens200_response.rb +1 -1
  123. data/lib/zippendo/models/list_api_tokens200_response_data_inner.rb +1 -1
  124. data/lib/zippendo/models/list_api_tokens200_response_data_inner_created_by.rb +1 -1
  125. data/lib/zippendo/models/list_api_tokens401_response.rb +3 -3
  126. data/lib/zippendo/models/list_available_carriers200_response_inner.rb +1 -1
  127. data/lib/zippendo/models/list_available_carriers200_response_inner_required_fields_inner.rb +1 -1
  128. data/lib/zippendo/models/list_carrier_product_service_points200_response_inner.rb +1 -1
  129. data/lib/zippendo/models/list_carrier_product_service_points200_response_inner_address.rb +1 -1
  130. data/lib/zippendo/models/list_carrier_product_service_points_request.rb +1 -1
  131. data/lib/zippendo/models/list_carrier_products200_response_inner.rb +1 -1
  132. data/lib/zippendo/models/list_carrier_products200_response_inner_additional_parameters_inner.rb +1 -1
  133. data/lib/zippendo/models/list_carrier_products200_response_inner_additional_parameters_inner_options_inner.rb +1 -1
  134. data/lib/zippendo/models/list_carrier_products200_response_inner_services_inner.rb +1 -1
  135. data/lib/zippendo/models/list_carrier_products200_response_inner_weight_limits.rb +1 -1
  136. data/lib/zippendo/models/list_carriers200_response.rb +1 -1
  137. data/lib/zippendo/models/list_carriers200_response_data_inner.rb +15 -2
  138. data/lib/zippendo/models/list_carriers200_response_data_inner_config_value.rb +1 -1
  139. data/lib/zippendo/models/list_orders200_response.rb +1 -1
  140. data/lib/zippendo/models/list_orders200_response_data_inner.rb +1 -1
  141. data/lib/zippendo/models/list_orders200_response_data_inner_order_channel.rb +1 -1
  142. data/lib/zippendo/models/list_org_brands200_response.rb +1 -1
  143. data/lib/zippendo/models/list_org_brands200_response_data_inner.rb +1 -1
  144. data/lib/zippendo/models/list_org_webhook_deliveries200_response.rb +1 -1
  145. data/lib/zippendo/models/list_org_webhook_deliveries200_response_data_inner.rb +1 -1
  146. data/lib/zippendo/models/list_org_webhooks200_response.rb +1 -1
  147. data/lib/zippendo/models/list_org_webhooks200_response_data_inner.rb +15 -2
  148. data/lib/zippendo/models/list_shipments200_response.rb +1 -1
  149. data/lib/zippendo/models/list_shipments200_response_data_inner.rb +1 -1
  150. data/lib/zippendo/models/list_shipments200_response_data_inner_address.rb +15 -2
  151. data/lib/zippendo/models/list_shipments200_response_data_inner_carrier_settings.rb +1 -1
  152. data/lib/zippendo/models/list_shipping_rules200_response.rb +1 -1
  153. data/lib/zippendo/models/list_shipping_rules200_response_data_inner.rb +15 -2
  154. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_additional_parameters_value.rb +1 -1
  155. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_additional_parameters_value_any_of.rb +1 -1
  156. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_additional_parameters_value_any_of_coordinates_inner.rb +1 -1
  157. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_carrier.rb +15 -2
  158. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner.rb +1 -1
  159. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of.rb +1 -1
  160. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of1.rb +1 -1
  161. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of2.rb +1 -1
  162. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of3.rb +1 -1
  163. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_conditions_inner_one_of4.rb +1 -1
  164. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_label_printer.rb +1 -1
  165. data/lib/zippendo/models/list_shipping_rules200_response_data_inner_return_shipping_rule.rb +1 -1
  166. data/lib/zippendo/models/revoke_api_token200_response.rb +1 -1
  167. data/lib/zippendo/models/send_shipment422_response.rb +3 -3
  168. data/lib/zippendo/models/send_shipment422_response_errors_inner.rb +1 -1
  169. data/lib/zippendo/models/split_shipment201_response.rb +1 -1
  170. data/lib/zippendo/models/split_shipment_parcel200_response.rb +1 -1
  171. data/lib/zippendo/models/split_shipment_parcel_request.rb +1 -1
  172. data/lib/zippendo/models/split_shipment_parcel_request_parcels_inner.rb +1 -1
  173. data/lib/zippendo/models/split_shipment_request.rb +1 -1
  174. data/lib/zippendo/models/test_org_webhook200_response.rb +1 -1
  175. data/lib/zippendo/models/track_shipment200_response.rb +1 -1
  176. data/lib/zippendo/models/track_shipment200_response_events_inner.rb +1 -1
  177. data/lib/zippendo/models/update_address_request.rb +31 -5
  178. data/lib/zippendo/models/update_api_token_request.rb +1 -1
  179. data/lib/zippendo/models/update_carrier_request.rb +31 -5
  180. data/lib/zippendo/models/update_order_request.rb +1 -1
  181. data/lib/zippendo/models/update_org200_response.rb +1 -1
  182. data/lib/zippendo/models/update_org_brand_request.rb +1 -1
  183. data/lib/zippendo/models/update_org_branding_request.rb +1 -1
  184. data/lib/zippendo/models/update_org_request.rb +1 -1
  185. data/lib/zippendo/models/update_org_webhook_request.rb +31 -5
  186. data/lib/zippendo/models/update_shipment_request.rb +1 -1
  187. data/lib/zippendo/models/update_shipping_rule_request.rb +31 -5
  188. data/lib/zippendo/models/verify_api_token200_response.rb +1 -1
  189. data/lib/zippendo/models/verify_api_token_request.rb +1 -1
  190. data/lib/zippendo/version.rb +2 -2
  191. data/lib/zippendo.rb +2 -1
  192. data/spec/spec_helper.rb +1 -1
  193. data/zippendo.gemspec +2 -2
  194. metadata +18 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a9082f54412379a1ec68798c7f6c703400efd5f6e87e828c7d43f55c877172de
4
- data.tar.gz: c1df4fb00fb2e26fe87e963b19136b5031ce6934027b191a33d5224de1b7e35f
3
+ metadata.gz: bae775bf1a1ae7660b693ca59ba5fc02b8a7d1c4c29b56fde73d294ae0f1cb38
4
+ data.tar.gz: 8e939ec19a2cd78b0f7136abe4a8de1a13e715e510a78cb22cc8fb2a3264960b
5
5
  SHA512:
6
- metadata.gz: 543e14101135ef460dbb326da2fe41a7251d5cd311b4ecddb199617155f719ee0304001ae6d34c59a1693c7415dd7e3f38ef89d4cec9e786517b19bee224b281
7
- data.tar.gz: d5ee65224640d264251382e3c6b991a7ef762f8b5a3baa871b55cdc46a145f7583c1774c182c000b6fab158c569c5d5e7e800df1a649b65d7e077f767f8e98a4
6
+ metadata.gz: 1ea90cdc79f094275431f7179c16013682ad5388d29b5ede0b00bd242bae3d40274857fd745308f6deed11be28398f32c0f5f0654d8b4e73f2043c5a2277f2c5
7
+ data.tar.gz: 2384357611670e6188f32ee9343d82aa65ab7696c623d026548217ddd5520a07f21e47db130304583f9d2835d0f743eeca80f40b2c96b47ea24f4e88939140ae
data/README.md CHANGED
@@ -76,6 +76,17 @@ A token created with a `brand_id` (see `CreateApiTokenRequest`) is permanently c
76
76
  needs no header. Sending `X-Zippendo-Brand` naming a *different* brand on such a token is refused with
77
77
  `403 BRAND_ACCESS_DENIED` — the binding is never widened.
78
78
 
79
+ List operations also take a `brand_scope` query parameter (`"own"` / `"shared"` / `"both"`) to narrow
80
+ further within whichever brand context already applies: `"own"` returns only that brand's rows and needs
81
+ a brand context (otherwise `400`); `"shared"` returns only the unassigned rows (equivalent to
82
+ `brand_id=none`). Set `X-Zippendo-Brand-Scope` as a default header the same way to cover every call:
83
+
84
+ ```ruby
85
+ Zippendo::ApiClient.default.default_headers["X-Zippendo-Brand-Scope"] = "own"
86
+ ```
87
+
88
+ An explicit `brand_scope` parameter passed to a call still wins over the header.
89
+
79
90
  ### Managing brands
80
91
 
81
92
  Brands are managed with `BrandsApi`. Use an organization-wide client for this — you are administering
data/docs/AddressesApi.md CHANGED
@@ -248,7 +248,9 @@ org_id = 'org_01HZX9K2QF' # String | Organization ID
248
248
  opts = {
249
249
  page: 1, # Integer | Page number (1-based)
250
250
  limit: 20, # Integer | Items per page (max 100)
251
- type: 'sender' # String | Filter by address type (sender, pickup, return)
251
+ type: 'sender', # String | Filter by address type (sender, pickup, return)
252
+ brand_id: 'brnd_8f3kd92ld0', # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
253
+ brand_scope: 'own' # String | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
252
254
  }
253
255
 
254
256
  begin
@@ -286,6 +288,8 @@ end
286
288
  | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
287
289
  | **limit** | **Integer** | Items per page (max 100) | [optional][default to 20] |
288
290
  | **type** | **String** | Filter by address type (sender, pickup, return) | [optional] |
291
+ | **brand_id** | **String** | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand. | [optional] |
292
+ | **brand_scope** | **String** | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context. | [optional] |
289
293
 
290
294
  ### Return type
291
295
 
data/docs/CarriersApi.md CHANGED
@@ -395,7 +395,9 @@ api_instance = Zippendo::CarriersApi.new
395
395
  org_id = 'org_01HZX9K2QF' # String | Organization ID
396
396
  opts = {
397
397
  page: 1, # Integer | Page number (1-based)
398
- limit: 20 # Integer | Items per page (max 100)
398
+ limit: 20, # Integer | Items per page (max 100)
399
+ brand_id: 'brnd_8f3kd92ld0', # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
400
+ brand_scope: 'own' # String | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
399
401
  }
400
402
 
401
403
  begin
@@ -432,6 +434,8 @@ end
432
434
  | **org_id** | **String** | Organization ID | |
433
435
  | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
434
436
  | **limit** | **Integer** | Items per page (max 100) | [optional][default to 20] |
437
+ | **brand_id** | **String** | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand. | [optional] |
438
+ | **brand_scope** | **String** | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context. | [optional] |
435
439
 
436
440
  ### Return type
437
441
 
@@ -7,6 +7,7 @@
7
7
  | **name** | **String** | Carrier display name | |
8
8
  | **carrier_slug** | **String** | Carrier slug identifier | |
9
9
  | **config** | [**Hash<String, ListCarriers200ResponseDataInnerConfigValue>**](ListCarriers200ResponseDataInnerConfigValue.md) | Carrier configuration (required and optional fields) | |
10
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
10
11
 
11
12
  ## Example
12
13
 
@@ -16,7 +17,8 @@ require 'zippendo'
16
17
  instance = Zippendo::ConnectCarrierRequest.new(
17
18
  name: PostNord,
18
19
  carrier_slug: postnord,
19
- config: {"customerNumber":"123456"}
20
+ config: {"customerNumber":"123456"},
21
+ brand_id: brnd_8f3kd92ld0
20
22
  )
21
23
  ```
22
24
 
@@ -16,6 +16,7 @@
16
16
  | **email** | **String** | Email address | |
17
17
  | **customs** | **Hash<String, String>** | Customs identifiers (voec, eori, sprn, ioss, fda, duns) | [optional] |
18
18
  | **address_types** | **Array<String>** | Address types (sender, pickup, return) | [optional] |
19
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
19
20
 
20
21
  ## Example
21
22
 
@@ -34,7 +35,8 @@ instance = Zippendo::CreateAddressRequest.new(
34
35
  state: ,
35
36
  email: lager@example.dk,
36
37
  customs: {"eori":"DK12345678"},
37
- address_types: ["sender"]
38
+ address_types: ["sender"],
39
+ brand_id: brnd_8f3kd92ld0
38
40
  )
39
41
  ```
40
42
 
@@ -10,6 +10,7 @@
10
10
  | **secret** | **String** | Signing secret used to verify webhook payloads | |
11
11
  | **events** | **Array<String>** | Events the webhook is subscribed to | |
12
12
  | **is_active** | **Boolean** | Whether the webhook is active | |
13
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
13
14
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
14
15
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
15
16
 
@@ -25,6 +26,7 @@ instance = Zippendo::CreateOrgWebhook201Response.new(
25
26
  secret: whsec_8f3a1c2b9d4e5f6a,
26
27
  events: ["shipment.created"],
27
28
  is_active: true,
29
+ brand_id: brnd_8f3kd92ld0,
28
30
  created_at: 2026-06-01T09:30:00.000Z,
29
31
  updated_at: 2026-06-10T11:15:00.000Z
30
32
  )
@@ -8,6 +8,7 @@
8
8
  | **url** | **String** | Webhook endpoint URL | |
9
9
  | **events** | **Array<String>** | Events to subscribe to | |
10
10
  | **is_active** | **Boolean** | Whether the webhook is active | [optional][default to true] |
11
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
11
12
 
12
13
  ## Example
13
14
 
@@ -18,7 +19,8 @@ instance = Zippendo::CreateOrgWebhookRequest.new(
18
19
  name: Order fulfilment notifier,
19
20
  url: https://hooks.example.dk/zippendo,
20
21
  events: ["shipment.created","tracking.updated"],
21
- is_active: true
22
+ is_active: true,
23
+ brand_id: brnd_8f3kd92ld0
22
24
  )
23
25
  ```
24
26
 
@@ -31,6 +31,7 @@
31
31
  | **return_shipping_rule_id** | **String** | ID of the return shipping rule | |
32
32
  | **auto_create_return_shipment** | **Boolean** | Automatically create and send a return shipment on dispatch | [default to false] |
33
33
  | **org_id** | **String** | Owning organization ID | |
34
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
34
35
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
35
36
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
36
37
 
@@ -67,6 +68,7 @@ instance = Zippendo::CreateShippingRule201Response.new(
67
68
  return_shipping_rule_id: null,
68
69
  auto_create_return_shipment: false,
69
70
  org_id: org_01HZX9K2QF,
71
+ brand_id: brnd_8f3kd92ld0,
70
72
  created_at: 2026-06-22T09:00:00.000Z,
71
73
  updated_at: 2026-06-22T09:00:00.000Z
72
74
  )
@@ -29,6 +29,7 @@
29
29
  | **document_printer_id** | **String** | ID of the document printer | [optional] |
30
30
  | **return_shipping_rule_id** | **String** | ID of the return shipping rule | [optional] |
31
31
  | **auto_create_return_shipment** | **Boolean** | Automatically create and send a return shipment on dispatch | [optional][default to false] |
32
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
32
33
 
33
34
  ## Example
34
35
 
@@ -60,7 +61,8 @@ instance = Zippendo::CreateShippingRuleRequest.new(
60
61
  label_printer_id: null,
61
62
  document_printer_id: null,
62
63
  return_shipping_rule_id: null,
63
- auto_create_return_shipment: false
64
+ auto_create_return_shipment: false,
65
+ brand_id: brnd_8f3kd92ld0
64
66
  )
65
67
  ```
66
68
 
@@ -8,6 +8,7 @@
8
8
  | **shipments** | [**GetBillingUsage200ResponseShipments**](GetBillingUsage200ResponseShipments.md) | | |
9
9
  | **limits** | [**GetBillingUsage200ResponseLimits**](GetBillingUsage200ResponseLimits.md) | | |
10
10
  | **add_ons** | [**Array<GetBillingUsage200ResponseAddOnsInner>**](GetBillingUsage200ResponseAddOnsInner.md) | Active add-ons on the subscription | |
11
+ | **zippy_messages** | [**GetBillingUsage200ResponseZippyMessages**](GetBillingUsage200ResponseZippyMessages.md) | | [optional] |
11
12
 
12
13
  ## Example
13
14
 
@@ -18,7 +19,8 @@ instance = Zippendo::GetBillingUsage200Response.new(
18
19
  current_period: null,
19
20
  shipments: null,
20
21
  limits: null,
21
- add_ons: []
22
+ add_ons: [],
23
+ zippy_messages: null
22
24
  )
23
25
  ```
24
26
 
@@ -0,0 +1,20 @@
1
+ # Zippendo::GetBillingUsage200ResponseZippyMessages
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **used** | **Float** | Zippy messages used this period | |
8
+ | **charges** | **Float** | Zippy message charges so far, in øre | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'zippendo'
14
+
15
+ instance = Zippendo::GetBillingUsage200ResponseZippyMessages.new(
16
+ used: 42,
17
+ charges: 4158
18
+ )
19
+ ```
20
+
@@ -18,6 +18,7 @@
18
18
  | **customs** | **Hash<String, String>** | Customs identifiers keyed by type | [optional] |
19
19
  | **address_types** | **Array<String>** | Address types (sender, pickup, return) | |
20
20
  | **org_id** | **String** | Owning organization ID | |
21
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
21
22
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
22
23
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
23
24
 
@@ -41,6 +42,7 @@ instance = Zippendo::ListAddresses200ResponseDataInner.new(
41
42
  customs: {"eori":"DK12345678"},
42
43
  address_types: ["sender"],
43
44
  org_id: org_01HZX9K2QF,
45
+ brand_id: brnd_8f3kd92ld0,
44
46
  created_at: 2026-06-22T09:00:00.000Z,
45
47
  updated_at: 2026-06-22T09:00:00.000Z
46
48
  )
@@ -9,6 +9,7 @@
9
9
  | **carrier_slug** | **String** | Carrier slug identifier | |
10
10
  | **config** | [**Hash<String, ListCarriers200ResponseDataInnerConfigValue>**](ListCarriers200ResponseDataInnerConfigValue.md) | Carrier configuration (required and optional fields) | |
11
11
  | **org_id** | **String** | Owning organization ID | |
12
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
12
13
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
13
14
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
14
15
  | **logo** | **String** | Carrier logo URL | [optional] |
@@ -27,6 +28,7 @@ instance = Zippendo::ListCarriers200ResponseDataInner.new(
27
28
  carrier_slug: postnord,
28
29
  config: {"customerNumber":"123456"},
29
30
  org_id: org_01HZX9K2QF,
31
+ brand_id: brnd_8f3kd92ld0,
30
32
  created_at: 2026-06-22T09:00:00.000Z,
31
33
  updated_at: 2026-06-22T09:00:00.000Z,
32
34
  logo: https://cdn.zippendo.com/logos/postnord.svg,
@@ -9,6 +9,7 @@
9
9
  | **url** | **String** | Webhook endpoint URL | |
10
10
  | **events** | **Array<String>** | Events the webhook is subscribed to | |
11
11
  | **is_active** | **Boolean** | Whether the webhook is active | |
12
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
12
13
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
13
14
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
14
15
 
@@ -23,6 +24,7 @@ instance = Zippendo::ListOrgWebhooks200ResponseDataInner.new(
23
24
  url: https://hooks.example.dk/zippendo,
24
25
  events: ["shipment.created"],
25
26
  is_active: true,
27
+ brand_id: brnd_8f3kd92ld0,
26
28
  created_at: 2026-06-01T09:30:00.000Z,
27
29
  updated_at: 2026-06-10T11:15:00.000Z
28
30
  )
@@ -18,6 +18,7 @@
18
18
  | **customs** | **Hash<String, String>** | Customs identifiers keyed by type | [optional] |
19
19
  | **address_types** | **Array<String>** | Address types (sender, pickup, return) | |
20
20
  | **org_id** | **String** | Owning organization ID | |
21
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
21
22
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
22
23
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
23
24
 
@@ -41,6 +42,7 @@ instance = Zippendo::ListShipments200ResponseDataInnerAddress.new(
41
42
  customs: {"eori":"DK12345678"},
42
43
  address_types: ["sender"],
43
44
  org_id: org_01HZX9K2QF,
45
+ brand_id: brnd_8f3kd92ld0,
44
46
  created_at: 2026-06-22T09:00:00.000Z,
45
47
  updated_at: 2026-06-22T09:00:00.000Z
46
48
  )
@@ -31,6 +31,7 @@
31
31
  | **return_shipping_rule_id** | **String** | ID of the return shipping rule | |
32
32
  | **auto_create_return_shipment** | **Boolean** | Automatically create and send a return shipment on dispatch | [default to false] |
33
33
  | **org_id** | **String** | Owning organization ID | |
34
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
34
35
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
35
36
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
36
37
  | **carrier** | [**ListShippingRules200ResponseDataInnerCarrier**](ListShippingRules200ResponseDataInnerCarrier.md) | | |
@@ -72,6 +73,7 @@ instance = Zippendo::ListShippingRules200ResponseDataInner.new(
72
73
  return_shipping_rule_id: null,
73
74
  auto_create_return_shipment: false,
74
75
  org_id: org_01HZX9K2QF,
76
+ brand_id: brnd_8f3kd92ld0,
75
77
  created_at: 2026-06-22T09:00:00.000Z,
76
78
  updated_at: 2026-06-22T09:00:00.000Z,
77
79
  carrier: null,
@@ -9,6 +9,7 @@
9
9
  | **carrier_slug** | **String** | Carrier slug identifier | |
10
10
  | **config** | [**Hash<String, ListCarriers200ResponseDataInnerConfigValue>**](ListCarriers200ResponseDataInnerConfigValue.md) | Carrier configuration (required and optional fields) | |
11
11
  | **org_id** | **String** | Owning organization ID | |
12
+ | **brand_id** | **String** | Brand this record belongs to, or null when it is organization-wide | |
12
13
  | **created_at** | **String** | Creation timestamp (ISO 8601) | |
13
14
  | **updated_at** | **String** | Last update timestamp (ISO 8601) | |
14
15
 
@@ -23,6 +24,7 @@ instance = Zippendo::ListShippingRules200ResponseDataInnerCarrier.new(
23
24
  carrier_slug: postnord,
24
25
  config: {"customerNumber":"123456"},
25
26
  org_id: org_01HZX9K2QF,
27
+ brand_id: brnd_8f3kd92ld0,
26
28
  created_at: 2026-06-22T09:00:00.000Z,
27
29
  updated_at: 2026-06-22T09:00:00.000Z
28
30
  )
data/docs/OrdersApi.md CHANGED
@@ -249,6 +249,7 @@ opts = {
249
249
  page: 1, # Integer | Page number (1-based)
250
250
  limit: 20, # Integer | Items per page (max 100)
251
251
  brand_id: 'brnd_8f3kd92ld0', # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
252
+ brand_scope: 'own', # String | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
252
253
  status: 'pending', # String | Order fulfilment status derived from its shipments.
253
254
  order_channel_id: 'clz9k2f0a0001abcd1234efgh', # String | Filter by order channel ID.
254
255
  search: 'Anna' # String | Search by order number or customer name/email.
@@ -289,6 +290,7 @@ end
289
290
  | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
290
291
  | **limit** | **Integer** | Items per page (max 100) | [optional][default to 20] |
291
292
  | **brand_id** | **String** | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand. | [optional] |
293
+ | **brand_scope** | **String** | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context. | [optional] |
292
294
  | **status** | **String** | Order fulfilment status derived from its shipments. | [optional] |
293
295
  | **order_channel_id** | **String** | Filter by order channel ID. | [optional] |
294
296
  | **search** | **String** | Search by order number or customer name/email. | [optional] |
data/docs/RulesApi.md CHANGED
@@ -247,7 +247,9 @@ api_instance = Zippendo::RulesApi.new
247
247
  org_id = 'org_01HZX9K2QF' # String | Organization ID
248
248
  opts = {
249
249
  page: 1, # Integer | Page number (1-based)
250
- limit: 20 # Integer | Items per page (max 100)
250
+ limit: 20, # Integer | Items per page (max 100)
251
+ brand_id: 'brnd_8f3kd92ld0', # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
252
+ brand_scope: 'own' # String | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
251
253
  }
252
254
 
253
255
  begin
@@ -284,6 +286,8 @@ end
284
286
  | **org_id** | **String** | Organization ID | |
285
287
  | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
286
288
  | **limit** | **Integer** | Items per page (max 100) | [optional][default to 20] |
289
+ | **brand_id** | **String** | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand. | [optional] |
290
+ | **brand_scope** | **String** | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context. | [optional] |
287
291
 
288
292
  ### Return type
289
293
 
data/docs/ShipmentsApi.md CHANGED
@@ -549,7 +549,8 @@ org_id = 'org_8f3kd92ld0' # String | Organization ID
549
549
  opts = {
550
550
  page: 1, # Integer | Page number (1-based)
551
551
  limit: 20, # Integer | Items per page (max 100)
552
- brand_id: 'brnd_8f3kd92ld0' # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
552
+ brand_id: 'brnd_8f3kd92ld0', # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
553
+ brand_scope: 'own' # String | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
553
554
  }
554
555
 
555
556
  begin
@@ -587,6 +588,7 @@ end
587
588
  | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
588
589
  | **limit** | **Integer** | Items per page (max 100) | [optional][default to 20] |
589
590
  | **brand_id** | **String** | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand. | [optional] |
591
+ | **brand_scope** | **String** | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context. | [optional] |
590
592
 
591
593
  ### Return type
592
594
 
@@ -16,6 +16,7 @@
16
16
  | **email** | **String** | Email address | [optional] |
17
17
  | **customs** | **Hash<String, String>** | Customs identifiers | [optional] |
18
18
  | **address_types** | **Array<String>** | Address types (sender, pickup, return) | [optional] |
19
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
19
20
 
20
21
  ## Example
21
22
 
@@ -34,7 +35,8 @@ instance = Zippendo::UpdateAddressRequest.new(
34
35
  state: Hovedstaden,
35
36
  email: lager@example.dk,
36
37
  customs: {"eori":"DK12345678"},
37
- address_types: ["sender"]
38
+ address_types: ["sender"],
39
+ brand_id: brnd_8f3kd92ld0
38
40
  )
39
41
  ```
40
42
 
@@ -7,6 +7,7 @@
7
7
  | **name** | **String** | Carrier display name | [optional] |
8
8
  | **carrier_slug** | **String** | Carrier slug identifier | [optional] |
9
9
  | **config** | [**Hash<String, ListCarriers200ResponseDataInnerConfigValue>**](ListCarriers200ResponseDataInnerConfigValue.md) | Carrier configuration (required and optional fields) | [optional] |
10
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
10
11
 
11
12
  ## Example
12
13
 
@@ -16,7 +17,8 @@ require 'zippendo'
16
17
  instance = Zippendo::UpdateCarrierRequest.new(
17
18
  name: GLS,
18
19
  carrier_slug: gls,
19
- config: {"customerNumber":"123456"}
20
+ config: {"customerNumber":"123456"},
21
+ brand_id: brnd_8f3kd92ld0
20
22
  )
21
23
  ```
22
24
 
@@ -8,6 +8,7 @@
8
8
  | **url** | **String** | Webhook endpoint URL | [optional] |
9
9
  | **events** | **Array<String>** | Events to subscribe to | [optional] |
10
10
  | **is_active** | **Boolean** | Whether the webhook is active | [optional] |
11
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
11
12
 
12
13
  ## Example
13
14
 
@@ -18,7 +19,8 @@ instance = Zippendo::UpdateOrgWebhookRequest.new(
18
19
  name: Order fulfilment notifier,
19
20
  url: https://hooks.example.dk/zippendo,
20
21
  events: ["shipment.created"],
21
- is_active: true
22
+ is_active: true,
23
+ brand_id: brnd_8f3kd92ld0
22
24
  )
23
25
  ```
24
26
 
@@ -29,6 +29,7 @@
29
29
  | **document_printer_id** | **String** | ID of the document printer | [optional] |
30
30
  | **return_shipping_rule_id** | **String** | ID of the return shipping rule | [optional] |
31
31
  | **auto_create_return_shipment** | **Boolean** | Automatically create and send a return shipment on dispatch | [optional][default to false] |
32
+ | **brand_id** | **String** | Brand this record is assigned to; null (or omitted outside a brand session) keeps it organization-wide | [optional] |
32
33
 
33
34
  ## Example
34
35
 
@@ -60,7 +61,8 @@ instance = Zippendo::UpdateShippingRuleRequest.new(
60
61
  label_printer_id: null,
61
62
  document_printer_id: null,
62
63
  return_shipping_rule_id: null,
63
- auto_create_return_shipment: false
64
+ auto_create_return_shipment: false,
65
+ brand_id: brnd_8f3kd92ld0
64
66
  )
65
67
  ```
66
68
 
data/docs/WebhooksApi.md CHANGED
@@ -326,7 +326,9 @@ api_instance = Zippendo::WebhooksApi.new
326
326
  org_id = 'org_8f3kd92ld0' # String | Organization ID
327
327
  opts = {
328
328
  page: 1, # Integer | Page number (1-based)
329
- limit: 20 # Integer | Items per page (max 100)
329
+ limit: 20, # Integer | Items per page (max 100)
330
+ brand_id: 'brnd_8f3kd92ld0', # String | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
331
+ brand_scope: 'own' # String | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
330
332
  }
331
333
 
332
334
  begin
@@ -363,6 +365,8 @@ end
363
365
  | **org_id** | **String** | Organization ID | |
364
366
  | **page** | **Integer** | Page number (1-based) | [optional][default to 1] |
365
367
  | **limit** | **Integer** | Items per page (max 100) | [optional][default to 20] |
368
+ | **brand_id** | **String** | Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand. | [optional] |
369
+ | **brand_scope** | **String** | How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context. | [optional] |
366
370
 
367
371
  ### Return type
368
372
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Zippendo Public API
3
3
 
4
- #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
4
+ #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@zippendo.com
@@ -238,6 +238,8 @@ module Zippendo
238
238
  # @option opts [Integer] :page Page number (1-based) (default to 1)
239
239
  # @option opts [Integer] :limit Items per page (max 100) (default to 20)
240
240
  # @option opts [String] :type Filter by address type (sender, pickup, return)
241
+ # @option opts [String] :brand_id Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
242
+ # @option opts [String] :brand_scope How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
241
243
  # @return [ListAddresses200Response]
242
244
  def list_addresses(org_id, opts = {})
243
245
  data, _status_code, _headers = list_addresses_with_http_info(org_id, opts)
@@ -251,6 +253,8 @@ module Zippendo
251
253
  # @option opts [Integer] :page Page number (1-based) (default to 1)
252
254
  # @option opts [Integer] :limit Items per page (max 100) (default to 20)
253
255
  # @option opts [String] :type Filter by address type (sender, pickup, return)
256
+ # @option opts [String] :brand_id Filter by brand. Pass a brand ID, or \"none\" for records not assigned to any brand.
257
+ # @option opts [String] :brand_scope How the brand context narrows this list: \"own\" returns only rows assigned to the current brand (requires a brand session, a brand-bound token, or the X-Zippendo-Brand header), \"shared\" returns only unassigned organization-wide rows, \"both\" (default) returns both. The X-Zippendo-Brand-Scope header supplies a default when the parameter is omitted. For strictly brand-owned records (orders, shipments), a brand-scoped request combined with \"shared\" returns no rows, since those records are never visible organization-wide from within a brand context.
254
258
  # @return [Array<(ListAddresses200Response, Integer, Hash)>] ListAddresses200Response data, response status code and response headers
255
259
  def list_addresses_with_http_info(org_id, opts = {})
256
260
  if @api_client.config.debugging
@@ -280,6 +284,10 @@ module Zippendo
280
284
  if @api_client.config.client_side_validation && opts[:'type'] && !allowable_values.include?(opts[:'type'])
281
285
  fail ArgumentError, "invalid value for \"type\", must be one of #{allowable_values}"
282
286
  end
287
+ allowable_values = ["own", "shared", "both"]
288
+ if @api_client.config.client_side_validation && opts[:'brand_scope'] && !allowable_values.include?(opts[:'brand_scope'])
289
+ fail ArgumentError, "invalid value for \"brand_scope\", must be one of #{allowable_values}"
290
+ end
283
291
  # resource path
284
292
  local_var_path = '/orgs/{orgId}/addresses'.sub('{orgId}', CGI.escape(org_id.to_s))
285
293
 
@@ -288,6 +296,8 @@ module Zippendo
288
296
  query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
289
297
  query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
290
298
  query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil?
299
+ query_params[:'brandId'] = opts[:'brand_id'] if !opts[:'brand_id'].nil?
300
+ query_params[:'brandScope'] = opts[:'brand_scope'] if !opts[:'brand_scope'].nil?
291
301
 
292
302
  # header parameters
293
303
  header_params = opts[:header_params] || {}
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Zippendo Public API
3
3
 
4
- #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
4
+ #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@zippendo.com
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Zippendo Public API
3
3
 
4
- #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
4
+ #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@zippendo.com
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #Zippendo Public API
3
3
 
4
- #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
4
+ #Public API documentation for Zippendo. Authenticate using your API token (Bearer token prefixed with zipp_). **Brands (sub-accounts).** An organization can be split into brands, each keeping its own orders, shipments and configuration separate. There are two ways to scope requests to one brand, and NEITHER changes any request body: 1. **Bind the token.** Create an API token with a `brandId` and every request it makes is confined to that brand — reads filtered, writes stamped. This is the recommended way to give a single brand's team its own credential. 2. **Send the `X-Zippendo-Brand` header.** An organization-wide token can scope an individual request by sending the brand's id or slug in this header. Most SDKs let you set it once on the client so every call inherits it. A brand-bound token that receives an `X-Zippendo-Brand` header naming a different brand is rejected with `403 BRAND_ACCESS_DENIED` — the binding is never widened. Omit both and requests cover the whole organization, which is the behaviour of every existing token. Records that belong to no brand carry `brandId: null`. Configuration (carriers, shipping rules, addresses) with a null brand is organization-wide and remains visible inside every brand; orders and shipments with a null brand are only visible organization-wide. List endpoints additionally take a `?brandScope=own|shared|both` parameter to narrow further within whichever brand context already applies. `own` returns only rows assigned to that brand, and requires a brand context — a brand-bound token, a resolved brand session, or the `X-Zippendo-Brand` header above — otherwise `400`. `shared` returns only the organization-wide rows (equivalent to filtering `brandId=none`). The default, `both`, keeps the existing behaviour: a brand context sees its own rows plus the organization-wide ones. Set `X-Zippendo-Brand-Scope` as a client default to apply the same choice to every request instead of repeating the query parameter on each call — an explicit `brandScope` query parameter always wins over the header, and a blank header value is ignored. Brands themselves are managed under the **Brands** tag. Retiring a brand is done with `POST /orgs/{orgId}/brands/{brandId}/archive` — permanent deletion is a dashboard-only action, since it is refused while any order, shipment, member or token still references the brand. Brands require a plan that includes them; creating one beyond your plan's limit returns `403`.
5
5
 
6
6
  The version of the OpenAPI document: 1.0.0
7
7
  Contact: support@zippendo.com