seatschart 0.1.0

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 (168) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +552 -0
  4. data/lib/seatschart/api/api_keys_api.rb +364 -0
  5. data/lib/seatschart/api/assets_api.rb +95 -0
  6. data/lib/seatschart/api/audit_api.rb +88 -0
  7. data/lib/seatschart/api/auth_api.rb +1187 -0
  8. data/lib/seatschart/api/billing_api.rb +355 -0
  9. data/lib/seatschart/api/charts_api.rb +4195 -0
  10. data/lib/seatschart/api/default_api.rb +763 -0
  11. data/lib/seatschart/api/embed_api.rb +407 -0
  12. data/lib/seatschart/api/embed_origins_api.rb +281 -0
  13. data/lib/seatschart/api/event_log_api.rb +148 -0
  14. data/lib/seatschart/api/events_api.rb +6608 -0
  15. data/lib/seatschart/api/health_api.rb +77 -0
  16. data/lib/seatschart/api/map_designer_api.rb +135 -0
  17. data/lib/seatschart/api/object_status_api.rb +805 -0
  18. data/lib/seatschart/api/orders_api.rb +166 -0
  19. data/lib/seatschart/api/public_api.rb +455 -0
  20. data/lib/seatschart/api/quotes_api.rb +103 -0
  21. data/lib/seatschart/api/seasons_api.rb +5543 -0
  22. data/lib/seatschart/api/seats_api.rb +1103 -0
  23. data/lib/seatschart/api/sse_api.rb +83 -0
  24. data/lib/seatschart/api/team_api.rb +428 -0
  25. data/lib/seatschart/api/usage_api.rb +540 -0
  26. data/lib/seatschart/api/webhooks_api.rb +771 -0
  27. data/lib/seatschart/api/workspace_api.rb +1244 -0
  28. data/lib/seatschart/api_client.rb +394 -0
  29. data/lib/seatschart/api_error.rb +58 -0
  30. data/lib/seatschart/configuration.rb +316 -0
  31. data/lib/seatschart/models/delete_api_workspaces_by_workspace_id200_response.rb +283 -0
  32. data/lib/seatschart/models/get_api_charts_by_chart_id_versions200_response.rb +247 -0
  33. data/lib/seatschart/models/get_api_charts_by_chart_id_versions200_response_items_inner.rb +473 -0
  34. data/lib/seatschart/models/get_api_charts_by_chart_id_versions200_response_items_inner_published_by.rb +280 -0
  35. data/lib/seatschart/models/get_api_events_by_event_id_map_versions200_response.rb +247 -0
  36. data/lib/seatschart/models/get_api_events_by_event_id_map_versions200_response_items_inner.rb +444 -0
  37. data/lib/seatschart/models/get_api_events_by_event_id_seat_views200_response.rb +267 -0
  38. data/lib/seatschart/models/get_api_events_by_event_id_seat_views200_response_views_value.rb +273 -0
  39. data/lib/seatschart/models/get_api_events_by_event_id_seat_views404_response.rb +237 -0
  40. data/lib/seatschart/models/get_api_monitoring_requests200_response.rb +388 -0
  41. data/lib/seatschart/models/get_api_monitoring_requests200_response_lanes.rb +237 -0
  42. data/lib/seatschart/models/get_api_monitoring_requests200_response_lanes_sales.rb +256 -0
  43. data/lib/seatschart/models/get_api_monitoring_requests200_response_points_inner.rb +286 -0
  44. data/lib/seatschart/models/get_api_workspace_integration200_response.rb +287 -0
  45. data/lib/seatschart/models/get_api_workspace_settings200_response.rb +329 -0
  46. data/lib/seatschart/models/get_api_workspace_settings200_response_bounds.rb +237 -0
  47. data/lib/seatschart/models/get_api_workspace_settings200_response_bounds_hold_period_minutes.rb +237 -0
  48. data/lib/seatschart/models/get_api_workspace_settings200_response_effective.rb +269 -0
  49. data/lib/seatschart/models/get_api_workspace_settings200_response_overrides.rb +241 -0
  50. data/lib/seatschart/models/get_api_workspace_settings200_response_sources.rb +339 -0
  51. data/lib/seatschart/models/get_api_workspaces200_response.rb +223 -0
  52. data/lib/seatschart/models/get_api_workspaces200_response_items_inner.rb +423 -0
  53. data/lib/seatschart/models/patch_api_charts_by_chart_id_categories_by_category_id_request.rb +304 -0
  54. data/lib/seatschart/models/patch_api_charts_by_chart_id_request.rb +288 -0
  55. data/lib/seatschart/models/patch_api_events_by_event_id_inventory_channels_by_channel_key_id_request.rb +272 -0
  56. data/lib/seatschart/models/patch_api_events_by_event_id_request.rb +448 -0
  57. data/lib/seatschart/models/patch_api_events_by_event_id_request_categories_inner.rb +343 -0
  58. data/lib/seatschart/models/patch_api_events_by_event_id_request_table_booking_config.rb +266 -0
  59. data/lib/seatschart/models/patch_api_keys_by_id_request.rb +292 -0
  60. data/lib/seatschart/models/patch_api_seasons_by_season_id_events_by_event_id_request.rb +221 -0
  61. data/lib/seatschart/models/patch_api_seasons_by_season_id_request.rb +276 -0
  62. data/lib/seatschart/models/patch_api_team_members_by_user_id_request.rb +255 -0
  63. data/lib/seatschart/models/patch_api_webhooks_by_id_request.rb +291 -0
  64. data/lib/seatschart/models/patch_api_workspace_chart_validation_request.rb +224 -0
  65. data/lib/seatschart/models/patch_api_workspace_chart_validation_request_severities.rb +543 -0
  66. data/lib/seatschart/models/patch_api_workspace_integration_request.rb +257 -0
  67. data/lib/seatschart/models/patch_api_workspace_request.rb +249 -0
  68. data/lib/seatschart/models/patch_api_workspace_settings_request.rb +307 -0
  69. data/lib/seatschart/models/post_api_auth2fa_disable_request.rb +281 -0
  70. data/lib/seatschart/models/post_api_auth2fa_enable_request.rb +250 -0
  71. data/lib/seatschart/models/post_api_auth2fa_enroll_confirm_request.rb +295 -0
  72. data/lib/seatschart/models/post_api_auth2fa_enroll_start_request.rb +250 -0
  73. data/lib/seatschart/models/post_api_auth2fa_verify_request.rb +326 -0
  74. data/lib/seatschart/models/post_api_auth_accept_invite_request.rb +293 -0
  75. data/lib/seatschart/models/post_api_auth_login_request.rb +293 -0
  76. data/lib/seatschart/models/post_api_auth_logout_request.rb +242 -0
  77. data/lib/seatschart/models/post_api_auth_refresh_request.rb +292 -0
  78. data/lib/seatschart/models/post_api_auth_signup_request.rb +321 -0
  79. data/lib/seatschart/models/post_api_auth_switch_workspace_request.rb +249 -0
  80. data/lib/seatschart/models/post_api_billing_checkout_session_request.rb +249 -0
  81. data/lib/seatschart/models/post_api_billing_confirm_checkout_request.rb +249 -0
  82. data/lib/seatschart/models/post_api_charts_by_chart_id_actions_archive200_response.rb +221 -0
  83. data/lib/seatschart/models/post_api_charts_by_chart_id_actions_archive200_response_chart.rb +249 -0
  84. data/lib/seatschart/models/post_api_charts_by_chart_id_actions_copy_to_workspace_request.rb +287 -0
  85. data/lib/seatschart/models/post_api_charts_by_chart_id_actions_validate_request.rb +348 -0
  86. data/lib/seatschart/models/post_api_charts_by_chart_id_actions_validate_request_seats_inner.rb +555 -0
  87. data/lib/seatschart/models/post_api_charts_by_chart_id_actions_validate_request_seats_inner_accessibility.rb +356 -0
  88. data/lib/seatschart/models/post_api_charts_by_chart_id_categories_request.rb +361 -0
  89. data/lib/seatschart/models/post_api_charts_by_chart_id_categories_request_ticket_types_inner.rb +448 -0
  90. data/lib/seatschart/models/post_api_charts_by_chart_id_duplicate_request.rb +233 -0
  91. data/lib/seatschart/models/post_api_charts_by_chart_id_map_publish422_response.rb +289 -0
  92. data/lib/seatschart/models/post_api_charts_by_chart_id_map_publish422_response_issues_inner.rb +402 -0
  93. data/lib/seatschart/models/post_api_charts_by_chart_id_map_publish_request.rb +244 -0
  94. data/lib/seatschart/models/post_api_charts_by_chart_id_preview_link_request.rb +243 -0
  95. data/lib/seatschart/models/post_api_charts_by_chart_id_versions_by_version_actions_copy_request.rb +242 -0
  96. data/lib/seatschart/models/post_api_charts_request.rb +372 -0
  97. data/lib/seatschart/models/post_api_charts_request_categories_inner.rb +346 -0
  98. data/lib/seatschart/models/post_api_embed_origins_request.rb +249 -0
  99. data/lib/seatschart/models/post_api_embed_tokens_request.rb +394 -0
  100. data/lib/seatschart/models/post_api_events_actions_change_object_status_request.rb +251 -0
  101. data/lib/seatschart/models/post_api_events_actions_change_object_status_request_status_changes_inner.rb +737 -0
  102. data/lib/seatschart/models/post_api_events_actions_change_object_status_request_status_changes_inner_objects_inner.rb +104 -0
  103. data/lib/seatschart/models/post_api_events_actions_change_object_status_request_status_changes_inner_objects_inner_any_of.rb +335 -0
  104. data/lib/seatschart/models/post_api_events_bulk_request.rb +332 -0
  105. data/lib/seatschart/models/post_api_events_bulk_request_events_inner.rb +398 -0
  106. data/lib/seatschart/models/post_api_events_by_event_id_actions_change_object_status_request.rb +824 -0
  107. data/lib/seatschart/models/post_api_events_by_event_id_actions_override_season_status_request.rb +272 -0
  108. data/lib/seatschart/models/post_api_events_by_event_id_actions_update_extra_data_request.rb +260 -0
  109. data/lib/seatschart/models/post_api_events_by_event_id_actions_update_extra_data_request_objects_inner.rb +263 -0
  110. data/lib/seatschart/models/post_api_events_by_event_id_actions_use_season_status_request.rb +252 -0
  111. data/lib/seatschart/models/post_api_events_by_event_id_duplicate_request.rb +261 -0
  112. data/lib/seatschart/models/post_api_events_by_event_id_inventory_channels_assign_request.rb +321 -0
  113. data/lib/seatschart/models/post_api_events_by_event_id_inventory_channels_request.rb +323 -0
  114. data/lib/seatschart/models/post_api_events_by_event_id_inventory_for_sale_apply_request.rb +333 -0
  115. data/lib/seatschart/models/post_api_events_by_event_id_objects_actions_retrieve_request.rb +252 -0
  116. data/lib/seatschart/models/post_api_events_request.rb +502 -0
  117. data/lib/seatschart/models/post_api_events_request_category_overrides_value.rb +276 -0
  118. data/lib/seatschart/models/post_api_events_request_channels_inner.rb +360 -0
  119. data/lib/seatschart/models/post_api_events_request_for_sale_config.rb +295 -0
  120. data/lib/seatschart/models/post_api_events_request_table_booking_config.rb +267 -0
  121. data/lib/seatschart/models/post_api_extract_seats_request.rb +279 -0
  122. data/lib/seatschart/models/post_api_ga_confirm409_response.rb +271 -0
  123. data/lib/seatschart/models/post_api_ga_confirm_request.rb +687 -0
  124. data/lib/seatschart/models/post_api_ga_release_request.rb +385 -0
  125. data/lib/seatschart/models/post_api_ga_reserve_request.rb +527 -0
  126. data/lib/seatschart/models/post_api_hold_tokens_by_token_request.rb +249 -0
  127. data/lib/seatschart/models/post_api_hold_tokens_request.rb +391 -0
  128. data/lib/seatschart/models/post_api_keys_request.rb +299 -0
  129. data/lib/seatschart/models/post_api_orders_by_order_id_cancel_request.rb +249 -0
  130. data/lib/seatschart/models/post_api_quotes_request.rb +351 -0
  131. data/lib/seatschart/models/post_api_seasons_by_season_id_actions_add_events_request.rb +261 -0
  132. data/lib/seatschart/models/post_api_seasons_by_season_id_actions_create_events_request.rb +322 -0
  133. data/lib/seatschart/models/post_api_seasons_by_season_id_actions_create_events_request_events_inner.rb +289 -0
  134. data/lib/seatschart/models/post_api_seasons_by_season_id_actions_remove_events_request.rb +251 -0
  135. data/lib/seatschart/models/post_api_seasons_by_season_id_events_request.rb +267 -0
  136. data/lib/seatschart/models/post_api_seasons_by_season_id_inventory_sync_request.rb +235 -0
  137. data/lib/seatschart/models/post_api_seasons_by_season_id_partial_seasons_request.rb +279 -0
  138. data/lib/seatschart/models/post_api_seasons_request.rb +395 -0
  139. data/lib/seatschart/models/post_api_seats_best_available_request.rb +809 -0
  140. data/lib/seatschart/models/post_api_seats_confirm409_response.rb +271 -0
  141. data/lib/seatschart/models/post_api_seats_confirm_request.rb +711 -0
  142. data/lib/seatschart/models/post_api_seats_holds_renew_request.rb +249 -0
  143. data/lib/seatschart/models/post_api_seats_release_request.rb +387 -0
  144. data/lib/seatschart/models/post_api_seats_reserve_request.rb +561 -0
  145. data/lib/seatschart/models/post_api_team_invitations_request.rb +299 -0
  146. data/lib/seatschart/models/post_api_ticket_buyers_request.rb +252 -0
  147. data/lib/seatschart/models/post_api_viewer_tokens_request.rb +292 -0
  148. data/lib/seatschart/models/post_api_webhooks_request.rb +298 -0
  149. data/lib/seatschart/models/post_api_workspaces_request.rb +269 -0
  150. data/lib/seatschart/models/put_api_charts_by_chart_id_tags_request.rb +243 -0
  151. data/lib/seatschart/models/put_api_charts_by_chart_id_versions_by_version_thumbnail_request.rb +261 -0
  152. data/lib/seatschart/models/put_api_events_by_event_id_inventory_channels_definitions_request.rb +242 -0
  153. data/lib/seatschart/models/put_api_events_by_event_id_inventory_channels_definitions_request_channels_inner.rb +405 -0
  154. data/lib/seatschart/models/put_api_events_by_event_id_inventory_channels_request.rb +242 -0
  155. data/lib/seatschart/models/put_api_events_by_event_id_inventory_channels_request_assignments_inner.rb +320 -0
  156. data/lib/seatschart/models/put_api_events_by_event_id_inventory_for_sale_request.rb +333 -0
  157. data/lib/seatschart/models/put_api_events_by_event_id_pricing_request.rb +297 -0
  158. data/lib/seatschart/models/put_api_events_by_event_id_pricing_request_categories_inner.rb +295 -0
  159. data/lib/seatschart/models/put_api_events_by_event_id_pricing_request_categories_inner_ticket_types_inner.rb +425 -0
  160. data/lib/seatschart/models/put_api_events_by_event_id_sales_rules_request.rb +320 -0
  161. data/lib/seatschart/models/put_api_events_by_event_id_sales_rules_request_buyer_limit.rb +259 -0
  162. data/lib/seatschart/models/put_api_events_by_event_id_sales_rules_request_lot_plans_inner.rb +374 -0
  163. data/lib/seatschart/models/put_api_events_by_event_id_sales_rules_request_lot_plans_inner_lots_inner.rb +364 -0
  164. data/lib/seatschart/models/put_api_events_by_event_id_sales_rules_request_quotas_inner.rb +418 -0
  165. data/lib/seatschart/retry.rb +118 -0
  166. data/lib/seatschart/version.rb +15 -0
  167. data/lib/seatschart.rb +198 -0
  168. metadata +254 -0
@@ -0,0 +1,4195 @@
1
+ =begin
2
+ #SeatsChart API
3
+
4
+ #Seat inventory and locking API for B2B2C integrations. Authenticate using `x-api-key` (partners) or `Authorization: Bearer` with an HS256 JWT.
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.11.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module SeatsChart
16
+ class ChartsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Delete chart permanently
23
+ # Permanently deletes a chart with its layout, draft, templates, tags and version history. Only archived charts that no event references can be deleted: `409 ERR_CHART_NOT_ARCHIVED` — archive it first (`POST /api/charts/:chartId/actions/archive`); `409 ERR_CHART_HAS_EVENTS` (`params.eventCount`) — keep it archived (events keep working) or delete the events. Requires the `content_delete` permission (dashboard admin / map editor; not available to partner API keys).
24
+ # @param chart_id [String]
25
+ # @param [Hash] opts the optional parameters
26
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
27
+ # @return [nil]
28
+ def delete_api_charts_by_chart_id(chart_id, opts = {})
29
+ delete_api_charts_by_chart_id_with_http_info(chart_id, opts)
30
+ nil
31
+ end
32
+
33
+ # Delete chart permanently
34
+ # Permanently deletes a chart with its layout, draft, templates, tags and version history. Only archived charts that no event references can be deleted: `409 ERR_CHART_NOT_ARCHIVED` — archive it first (`POST /api/charts/:chartId/actions/archive`); `409 ERR_CHART_HAS_EVENTS` (`params.eventCount`) — keep it archived (events keep working) or delete the events. Requires the `content_delete` permission (dashboard admin / map editor; not available to partner API keys).
35
+ # @param chart_id [String]
36
+ # @param [Hash] opts the optional parameters
37
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
38
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
39
+ def delete_api_charts_by_chart_id_with_http_info(chart_id, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: ChartsApi.delete_api_charts_by_chart_id ...'
42
+ end
43
+ # verify the required parameter 'chart_id' is set
44
+ if @api_client.config.client_side_validation && chart_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.delete_api_charts_by_chart_id"
46
+ end
47
+ if @api_client.config.client_side_validation && chart_id.to_s.length > 36
48
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.delete_api_charts_by_chart_id, the character length must be smaller than or equal to 36.'
49
+ end
50
+
51
+ if @api_client.config.client_side_validation && chart_id.to_s.length < 36
52
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.delete_api_charts_by_chart_id, the character length must be great than or equal to 36.'
53
+ end
54
+
55
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
56
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.delete_api_charts_by_chart_id, the character length must be smaller than or equal to 255.'
57
+ end
58
+
59
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
60
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.delete_api_charts_by_chart_id, the character length must be great than or equal to 1.'
61
+ end
62
+
63
+ # resource path
64
+ local_var_path = '/api/charts/{chartId}'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
65
+
66
+ # query parameters
67
+ query_params = opts[:query_params] || {}
68
+
69
+ # header parameters
70
+ header_params = opts[:header_params] || {}
71
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
72
+
73
+ # form parameters
74
+ form_params = opts[:form_params] || {}
75
+
76
+ # http body (model)
77
+ post_body = opts[:debug_body]
78
+
79
+ # return_type
80
+ return_type = opts[:debug_return_type]
81
+
82
+ # auth_names
83
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
84
+
85
+ new_options = opts.merge(
86
+ :operation => :"ChartsApi.delete_api_charts_by_chart_id",
87
+ :header_params => header_params,
88
+ :query_params => query_params,
89
+ :form_params => form_params,
90
+ :body => post_body,
91
+ :auth_names => auth_names,
92
+ :return_type => return_type
93
+ )
94
+
95
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
96
+ if @api_client.config.debugging
97
+ @api_client.config.logger.debug "API called: ChartsApi#delete_api_charts_by_chart_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
98
+ end
99
+ return data, status_code, headers
100
+ end
101
+
102
+ # Revoke every public preview link of a chart
103
+ # Rotates the chart's preview secret: all links issued before stop working (within ~15 s on every API instance).
104
+ # @param chart_id [String]
105
+ # @param [Hash] opts the optional parameters
106
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
107
+ # @return [nil]
108
+ def delete_api_charts_by_chart_id_preview_link(chart_id, opts = {})
109
+ delete_api_charts_by_chart_id_preview_link_with_http_info(chart_id, opts)
110
+ nil
111
+ end
112
+
113
+ # Revoke every public preview link of a chart
114
+ # Rotates the chart&#39;s preview secret: all links issued before stop working (within ~15 s on every API instance).
115
+ # @param chart_id [String]
116
+ # @param [Hash] opts the optional parameters
117
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
118
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
119
+ def delete_api_charts_by_chart_id_preview_link_with_http_info(chart_id, opts = {})
120
+ if @api_client.config.debugging
121
+ @api_client.config.logger.debug 'Calling API: ChartsApi.delete_api_charts_by_chart_id_preview_link ...'
122
+ end
123
+ # verify the required parameter 'chart_id' is set
124
+ if @api_client.config.client_side_validation && chart_id.nil?
125
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.delete_api_charts_by_chart_id_preview_link"
126
+ end
127
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
128
+ if @api_client.config.client_side_validation && chart_id !~ pattern
129
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.delete_api_charts_by_chart_id_preview_link, must conform to the pattern #{pattern}."
130
+ end
131
+
132
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
133
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.delete_api_charts_by_chart_id_preview_link, the character length must be smaller than or equal to 255.'
134
+ end
135
+
136
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
137
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.delete_api_charts_by_chart_id_preview_link, the character length must be great than or equal to 1.'
138
+ end
139
+
140
+ # resource path
141
+ local_var_path = '/api/charts/{chartId}/preview-link'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
142
+
143
+ # query parameters
144
+ query_params = opts[:query_params] || {}
145
+
146
+ # header parameters
147
+ header_params = opts[:header_params] || {}
148
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
149
+
150
+ # form parameters
151
+ form_params = opts[:form_params] || {}
152
+
153
+ # http body (model)
154
+ post_body = opts[:debug_body]
155
+
156
+ # return_type
157
+ return_type = opts[:debug_return_type]
158
+
159
+ # auth_names
160
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
161
+
162
+ new_options = opts.merge(
163
+ :operation => :"ChartsApi.delete_api_charts_by_chart_id_preview_link",
164
+ :header_params => header_params,
165
+ :query_params => query_params,
166
+ :form_params => form_params,
167
+ :body => post_body,
168
+ :auth_names => auth_names,
169
+ :return_type => return_type
170
+ )
171
+
172
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
173
+ if @api_client.config.debugging
174
+ @api_client.config.logger.debug "API called: ChartsApi#delete_api_charts_by_chart_id_preview_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
175
+ end
176
+ return data, status_code, headers
177
+ end
178
+
179
+ # List charts
180
+ # Without query parameters, returns the legacy `{ charts }` shape (newest draft first, at most 200 rows, archived charts hidden); its items carry `publishedValidation` (stored counts of the published map, what event creation checks). When `limit`, `cursor`, `q`, `archived`, `tag`, `sort` or `expand` is sent, returns a cursor page `{ items, nextCursor }` (stable across pages, no row cap). Pass `nextCursor` back as `cursor` with the same filters until it is null. Paginated items add `eventCount`, `recentEvents` (up to 3 `{ id, name, date, status: upcoming | past | ended }`: upcoming soonest first, then past most recent first, then ended), `archivedAt`, `createdAt`, `tags`, `latestVersion`, `hasThumbnail` and `thumbnailUrl` (authenticated relative path, null until first publish) and omit `mapTemplate` (no layout geometry is read). `validation` `{ errors, warnings, issues: [{ code, severity, count, message }] }` holds the per-rule counts stored at the last draft save / publish under the current workspace severity (null when never computed); the rules are not re-run. Archived charts are hidden unless `archived=true|all`.
181
+ # @param [Hash] opts the optional parameters
182
+ # @option opts [Float] :limit Page size (1..100, default 20).
183
+ # @option opts [String] :cursor Opaque &#x60;nextCursor&#x60; value from the previous page.
184
+ # @option opts [String] :q Case-insensitive substring match on the chart name, or the exact chart key.
185
+ # @option opts [String] :archived &#x60;false&#x60; (default) hides archived charts, &#x60;true&#x60; returns only archived charts, &#x60;all&#x60; returns both.
186
+ # @option opts [String] :tag Comma-separated tags (case-insensitive, at most 5); a chart must carry all of them.
187
+ # @option opts [String] :sort &#x60;name&#x60; (default): name A→Z. &#x60;recent&#x60;: last draft save / publish first, then creation time.
188
+ # @option opts [String] :expand Comma-separated. &#x60;events&#x60; adds &#x60;events[]&#x60; (&#x60;{ id, key, name, date, isInThePast }&#x60;, soonest first, at most 100 per chart; &#x60;eventCount&#x60; has the total). &#x60;validation&#x60; is accepted for seats.io compatibility (&#x60;validation&#x60; is always part of paginated items).
189
+ # @return [nil]
190
+ def get_api_charts(opts = {})
191
+ get_api_charts_with_http_info(opts)
192
+ nil
193
+ end
194
+
195
+ # List charts
196
+ # Without query parameters, returns the legacy &#x60;{ charts }&#x60; shape (newest draft first, at most 200 rows, archived charts hidden); its items carry &#x60;publishedValidation&#x60; (stored counts of the published map, what event creation checks). When &#x60;limit&#x60;, &#x60;cursor&#x60;, &#x60;q&#x60;, &#x60;archived&#x60;, &#x60;tag&#x60;, &#x60;sort&#x60; or &#x60;expand&#x60; is sent, returns a cursor page &#x60;{ items, nextCursor }&#x60; (stable across pages, no row cap). Pass &#x60;nextCursor&#x60; back as &#x60;cursor&#x60; with the same filters until it is null. Paginated items add &#x60;eventCount&#x60;, &#x60;recentEvents&#x60; (up to 3 &#x60;{ id, name, date, status: upcoming | past | ended }&#x60;: upcoming soonest first, then past most recent first, then ended), &#x60;archivedAt&#x60;, &#x60;createdAt&#x60;, &#x60;tags&#x60;, &#x60;latestVersion&#x60;, &#x60;hasThumbnail&#x60; and &#x60;thumbnailUrl&#x60; (authenticated relative path, null until first publish) and omit &#x60;mapTemplate&#x60; (no layout geometry is read). &#x60;validation&#x60; &#x60;{ errors, warnings, issues: [{ code, severity, count, message }] }&#x60; holds the per-rule counts stored at the last draft save / publish under the current workspace severity (null when never computed); the rules are not re-run. Archived charts are hidden unless &#x60;archived&#x3D;true|all&#x60;.
197
+ # @param [Hash] opts the optional parameters
198
+ # @option opts [Float] :limit Page size (1..100, default 20).
199
+ # @option opts [String] :cursor Opaque &#x60;nextCursor&#x60; value from the previous page.
200
+ # @option opts [String] :q Case-insensitive substring match on the chart name, or the exact chart key.
201
+ # @option opts [String] :archived &#x60;false&#x60; (default) hides archived charts, &#x60;true&#x60; returns only archived charts, &#x60;all&#x60; returns both.
202
+ # @option opts [String] :tag Comma-separated tags (case-insensitive, at most 5); a chart must carry all of them.
203
+ # @option opts [String] :sort &#x60;name&#x60; (default): name A→Z. &#x60;recent&#x60;: last draft save / publish first, then creation time.
204
+ # @option opts [String] :expand Comma-separated. &#x60;events&#x60; adds &#x60;events[]&#x60; (&#x60;{ id, key, name, date, isInThePast }&#x60;, soonest first, at most 100 per chart; &#x60;eventCount&#x60; has the total). &#x60;validation&#x60; is accepted for seats.io compatibility (&#x60;validation&#x60; is always part of paginated items).
205
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
206
+ def get_api_charts_with_http_info(opts = {})
207
+ if @api_client.config.debugging
208
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts ...'
209
+ end
210
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
211
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ChartsApi.get_api_charts, must be smaller than or equal to 100.'
212
+ end
213
+
214
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
215
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ChartsApi.get_api_charts, must be greater than or equal to 1.'
216
+ end
217
+
218
+ if @api_client.config.client_side_validation && !opts[:'cursor'].nil? && opts[:'cursor'].to_s.length > 512
219
+ fail ArgumentError, 'invalid value for "opts[:"cursor"]" when calling ChartsApi.get_api_charts, the character length must be smaller than or equal to 512.'
220
+ end
221
+
222
+ if @api_client.config.client_side_validation && !opts[:'cursor'].nil? && opts[:'cursor'].to_s.length < 1
223
+ fail ArgumentError, 'invalid value for "opts[:"cursor"]" when calling ChartsApi.get_api_charts, the character length must be great than or equal to 1.'
224
+ end
225
+
226
+ pattern = Regexp.new(/^[A-Za-z0-9_-]+$/)
227
+ if @api_client.config.client_side_validation && !opts[:'cursor'].nil? && opts[:'cursor'] !~ pattern
228
+ fail ArgumentError, "invalid value for 'opts[:\"cursor\"]' when calling ChartsApi.get_api_charts, must conform to the pattern #{pattern}."
229
+ end
230
+
231
+ if @api_client.config.client_side_validation && !opts[:'q'].nil? && opts[:'q'].to_s.length > 128
232
+ fail ArgumentError, 'invalid value for "opts[:"q"]" when calling ChartsApi.get_api_charts, the character length must be smaller than or equal to 128.'
233
+ end
234
+
235
+ if @api_client.config.client_side_validation && !opts[:'q'].nil? && opts[:'q'].to_s.length < 1
236
+ fail ArgumentError, 'invalid value for "opts[:"q"]" when calling ChartsApi.get_api_charts, the character length must be great than or equal to 1.'
237
+ end
238
+
239
+ allowable_values = ["false", "true", "all"]
240
+ if @api_client.config.client_side_validation && opts[:'archived'] && !allowable_values.include?(opts[:'archived'])
241
+ fail ArgumentError, "invalid value for \"archived\", must be one of #{allowable_values}"
242
+ end
243
+ if @api_client.config.client_side_validation && !opts[:'tag'].nil? && opts[:'tag'].to_s.length > 256
244
+ fail ArgumentError, 'invalid value for "opts[:"tag"]" when calling ChartsApi.get_api_charts, the character length must be smaller than or equal to 256.'
245
+ end
246
+
247
+ if @api_client.config.client_side_validation && !opts[:'tag'].nil? && opts[:'tag'].to_s.length < 1
248
+ fail ArgumentError, 'invalid value for "opts[:"tag"]" when calling ChartsApi.get_api_charts, the character length must be great than or equal to 1.'
249
+ end
250
+
251
+ allowable_values = ["name", "recent"]
252
+ if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
253
+ fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
254
+ end
255
+ if @api_client.config.client_side_validation && !opts[:'expand'].nil? && opts[:'expand'].to_s.length > 64
256
+ fail ArgumentError, 'invalid value for "opts[:"expand"]" when calling ChartsApi.get_api_charts, the character length must be smaller than or equal to 64.'
257
+ end
258
+
259
+ if @api_client.config.client_side_validation && !opts[:'expand'].nil? && opts[:'expand'].to_s.length < 1
260
+ fail ArgumentError, 'invalid value for "opts[:"expand"]" when calling ChartsApi.get_api_charts, the character length must be great than or equal to 1.'
261
+ end
262
+
263
+ # resource path
264
+ local_var_path = '/api/charts'
265
+
266
+ # query parameters
267
+ query_params = opts[:query_params] || {}
268
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
269
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
270
+ query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
271
+ query_params[:'archived'] = opts[:'archived'] if !opts[:'archived'].nil?
272
+ query_params[:'tag'] = opts[:'tag'] if !opts[:'tag'].nil?
273
+ query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
274
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
275
+
276
+ # header parameters
277
+ header_params = opts[:header_params] || {}
278
+
279
+ # form parameters
280
+ form_params = opts[:form_params] || {}
281
+
282
+ # http body (model)
283
+ post_body = opts[:debug_body]
284
+
285
+ # return_type
286
+ return_type = opts[:debug_return_type]
287
+
288
+ # auth_names
289
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
290
+
291
+ new_options = opts.merge(
292
+ :operation => :"ChartsApi.get_api_charts",
293
+ :header_params => header_params,
294
+ :query_params => query_params,
295
+ :form_params => form_params,
296
+ :body => post_body,
297
+ :auth_names => auth_names,
298
+ :return_type => return_type
299
+ )
300
+
301
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
302
+ if @api_client.config.debugging
303
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
304
+ end
305
+ return data, status_code, headers
306
+ end
307
+
308
+ # Retrieve one chart
309
+ # Returns chart `key`, name and publication metadata: `publishedAt`, `draftUpdatedAt`, `isPublished`, `hasUnpublishedDraft`, `hasDraft`, published seat / GA template counts and the number of events using it, plus `archivedAt`, `createdAt`, `tags`, `latestVersion`, `hasThumbnail` and `thumbnailUrl`. Archived charts are still returned. Geometry blobs are never returned — use the map / draft endpoints. `?expand=zones` adds the zones of the published chart (`&version=draft`: of the draft; empty when that version does not exist). The path accepts the chart key. 404 when the chart belongs to another tenant.
310
+ # @param chart_id [String] Chart id (UUID) or chart key.
311
+ # @param [Hash] opts the optional parameters
312
+ # @option opts [String] :expand &#x60;zones&#x60; adds &#x60;zones[]&#x60; (same items as GET /charts/{chartId}/zones) of the version selected by &#x60;version&#x60;.
313
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60; (the unpublished designer draft).
314
+ # @return [nil]
315
+ def get_api_charts_by_chart_id(chart_id, opts = {})
316
+ get_api_charts_by_chart_id_with_http_info(chart_id, opts)
317
+ nil
318
+ end
319
+
320
+ # Retrieve one chart
321
+ # Returns chart &#x60;key&#x60;, name and publication metadata: &#x60;publishedAt&#x60;, &#x60;draftUpdatedAt&#x60;, &#x60;isPublished&#x60;, &#x60;hasUnpublishedDraft&#x60;, &#x60;hasDraft&#x60;, published seat / GA template counts and the number of events using it, plus &#x60;archivedAt&#x60;, &#x60;createdAt&#x60;, &#x60;tags&#x60;, &#x60;latestVersion&#x60;, &#x60;hasThumbnail&#x60; and &#x60;thumbnailUrl&#x60;. Archived charts are still returned. Geometry blobs are never returned — use the map / draft endpoints. &#x60;?expand&#x3D;zones&#x60; adds the zones of the published chart (&#x60;&amp;version&#x3D;draft&#x60;: of the draft; empty when that version does not exist). The path accepts the chart key. 404 when the chart belongs to another tenant.
322
+ # @param chart_id [String] Chart id (UUID) or chart key.
323
+ # @param [Hash] opts the optional parameters
324
+ # @option opts [String] :expand &#x60;zones&#x60; adds &#x60;zones[]&#x60; (same items as GET /charts/{chartId}/zones) of the version selected by &#x60;version&#x60;.
325
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60; (the unpublished designer draft).
326
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
327
+ def get_api_charts_by_chart_id_with_http_info(chart_id, opts = {})
328
+ if @api_client.config.debugging
329
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id ...'
330
+ end
331
+ # verify the required parameter 'chart_id' is set
332
+ if @api_client.config.client_side_validation && chart_id.nil?
333
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id"
334
+ end
335
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
336
+ if @api_client.config.client_side_validation && chart_id !~ pattern
337
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id, must conform to the pattern #{pattern}."
338
+ end
339
+
340
+ if @api_client.config.client_side_validation && !opts[:'expand'].nil? && opts[:'expand'].to_s.length > 64
341
+ fail ArgumentError, 'invalid value for "opts[:"expand"]" when calling ChartsApi.get_api_charts_by_chart_id, the character length must be smaller than or equal to 64.'
342
+ end
343
+
344
+ pattern = Regexp.new(/^[A-Za-z,]*$/)
345
+ if @api_client.config.client_side_validation && !opts[:'expand'].nil? && opts[:'expand'] !~ pattern
346
+ fail ArgumentError, "invalid value for 'opts[:\"expand\"]' when calling ChartsApi.get_api_charts_by_chart_id, must conform to the pattern #{pattern}."
347
+ end
348
+
349
+ allowable_values = ["published", "draft"]
350
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
351
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
352
+ end
353
+ # resource path
354
+ local_var_path = '/api/charts/{chartId}'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
355
+
356
+ # query parameters
357
+ query_params = opts[:query_params] || {}
358
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
359
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
360
+
361
+ # header parameters
362
+ header_params = opts[:header_params] || {}
363
+
364
+ # form parameters
365
+ form_params = opts[:form_params] || {}
366
+
367
+ # http body (model)
368
+ post_body = opts[:debug_body]
369
+
370
+ # return_type
371
+ return_type = opts[:debug_return_type]
372
+
373
+ # auth_names
374
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
375
+
376
+ new_options = opts.merge(
377
+ :operation => :"ChartsApi.get_api_charts_by_chart_id",
378
+ :header_params => header_params,
379
+ :query_params => query_params,
380
+ :form_params => form_params,
381
+ :body => post_body,
382
+ :auth_names => auth_names,
383
+ :return_type => return_type
384
+ )
385
+
386
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
387
+ if @api_client.config.debugging
388
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
389
+ end
390
+ return data, status_code, headers
391
+ end
392
+
393
+ # List the categories of a chart
394
+ # Categories (`{ id, name, color, ticketTypes, seatCount, gaAreaCount }`) of the draft, else the published map (`source` tells which). `?version=published` reads the published chart even while a draft exists; `?version=draft` reads only the draft (404 `draft_not_found` / `not_published` when that version does not exist). Requires read access.
395
+ # @param chart_id [String]
396
+ # @param [Hash] opts the optional parameters
397
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60;. Omitted: the draft when there is one, else the published map.
398
+ # @return [nil]
399
+ def get_api_charts_by_chart_id_categories(chart_id, opts = {})
400
+ get_api_charts_by_chart_id_categories_with_http_info(chart_id, opts)
401
+ nil
402
+ end
403
+
404
+ # List the categories of a chart
405
+ # Categories (&#x60;{ id, name, color, ticketTypes, seatCount, gaAreaCount }&#x60;) of the draft, else the published map (&#x60;source&#x60; tells which). &#x60;?version&#x3D;published&#x60; reads the published chart even while a draft exists; &#x60;?version&#x3D;draft&#x60; reads only the draft (404 &#x60;draft_not_found&#x60; / &#x60;not_published&#x60; when that version does not exist). Requires read access.
406
+ # @param chart_id [String]
407
+ # @param [Hash] opts the optional parameters
408
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60;. Omitted: the draft when there is one, else the published map.
409
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
410
+ def get_api_charts_by_chart_id_categories_with_http_info(chart_id, opts = {})
411
+ if @api_client.config.debugging
412
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_categories ...'
413
+ end
414
+ # verify the required parameter 'chart_id' is set
415
+ if @api_client.config.client_side_validation && chart_id.nil?
416
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_categories"
417
+ end
418
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
419
+ if @api_client.config.client_side_validation && chart_id !~ pattern
420
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_categories, must conform to the pattern #{pattern}."
421
+ end
422
+
423
+ allowable_values = ["published", "draft"]
424
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
425
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
426
+ end
427
+ # resource path
428
+ local_var_path = '/api/charts/{chartId}/categories'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
429
+
430
+ # query parameters
431
+ query_params = opts[:query_params] || {}
432
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
433
+
434
+ # header parameters
435
+ header_params = opts[:header_params] || {}
436
+
437
+ # form parameters
438
+ form_params = opts[:form_params] || {}
439
+
440
+ # http body (model)
441
+ post_body = opts[:debug_body]
442
+
443
+ # return_type
444
+ return_type = opts[:debug_return_type]
445
+
446
+ # auth_names
447
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
448
+
449
+ new_options = opts.merge(
450
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_categories",
451
+ :header_params => header_params,
452
+ :query_params => query_params,
453
+ :form_params => form_params,
454
+ :body => post_body,
455
+ :auth_names => auth_names,
456
+ :return_type => return_type
457
+ )
458
+
459
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
460
+ if @api_client.config.debugging
461
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_categories\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
462
+ end
463
+ return data, status_code, headers
464
+ end
465
+
466
+ # Read one version of a chart map
467
+ # Returns the **published** chart map by default (`seats`, `shapes`, `referenceImage`, `backgroundImage`, `meta`), even while an unpublished draft exists (`meta.hasUnpublishedDraft` tells). `?version=draft` returns the draft only (404 `draft_not_found` without one; requires map authoring access, like `GET /charts/{chartId}/map/draft`, which falls back to the published map). 404 `not_published` for a chart that was never published. Validate a version with `POST /charts/{chartId}/actions/validate?version=published|draft`. Requires read access.
468
+ # @param chart_id [String] Chart id (UUID) or chart key.
469
+ # @param [Hash] opts the optional parameters
470
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60; (the unpublished designer draft).
471
+ # @return [nil]
472
+ def get_api_charts_by_chart_id_map(chart_id, opts = {})
473
+ get_api_charts_by_chart_id_map_with_http_info(chart_id, opts)
474
+ nil
475
+ end
476
+
477
+ # Read one version of a chart map
478
+ # Returns the **published** chart map by default (&#x60;seats&#x60;, &#x60;shapes&#x60;, &#x60;referenceImage&#x60;, &#x60;backgroundImage&#x60;, &#x60;meta&#x60;), even while an unpublished draft exists (&#x60;meta.hasUnpublishedDraft&#x60; tells). &#x60;?version&#x3D;draft&#x60; returns the draft only (404 &#x60;draft_not_found&#x60; without one; requires map authoring access, like &#x60;GET /charts/{chartId}/map/draft&#x60;, which falls back to the published map). 404 &#x60;not_published&#x60; for a chart that was never published. Validate a version with &#x60;POST /charts/{chartId}/actions/validate?version&#x3D;published|draft&#x60;. Requires read access.
479
+ # @param chart_id [String] Chart id (UUID) or chart key.
480
+ # @param [Hash] opts the optional parameters
481
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60; (the unpublished designer draft).
482
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
483
+ def get_api_charts_by_chart_id_map_with_http_info(chart_id, opts = {})
484
+ if @api_client.config.debugging
485
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_map ...'
486
+ end
487
+ # verify the required parameter 'chart_id' is set
488
+ if @api_client.config.client_side_validation && chart_id.nil?
489
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_map"
490
+ end
491
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
492
+ if @api_client.config.client_side_validation && chart_id !~ pattern
493
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_map, must conform to the pattern #{pattern}."
494
+ end
495
+
496
+ allowable_values = ["published", "draft"]
497
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
498
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
499
+ end
500
+ # resource path
501
+ local_var_path = '/api/charts/{chartId}/map'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
502
+
503
+ # query parameters
504
+ query_params = opts[:query_params] || {}
505
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
506
+
507
+ # header parameters
508
+ header_params = opts[:header_params] || {}
509
+
510
+ # form parameters
511
+ form_params = opts[:form_params] || {}
512
+
513
+ # http body (model)
514
+ post_body = opts[:debug_body]
515
+
516
+ # return_type
517
+ return_type = opts[:debug_return_type]
518
+
519
+ # auth_names
520
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
521
+
522
+ new_options = opts.merge(
523
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_map",
524
+ :header_params => header_params,
525
+ :query_params => query_params,
526
+ :form_params => form_params,
527
+ :body => post_body,
528
+ :auth_names => auth_names,
529
+ :return_type => return_type
530
+ )
531
+
532
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
533
+ if @api_client.config.debugging
534
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_map\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
535
+ end
536
+ return data, status_code, headers
537
+ end
538
+
539
+ # Load chart map draft for designer
540
+ # @param chart_id [String]
541
+ # @param [Hash] opts the optional parameters
542
+ # @return [nil]
543
+ def get_api_charts_by_chart_id_map_draft(chart_id, opts = {})
544
+ get_api_charts_by_chart_id_map_draft_with_http_info(chart_id, opts)
545
+ nil
546
+ end
547
+
548
+ # Load chart map draft for designer
549
+ # @param chart_id [String]
550
+ # @param [Hash] opts the optional parameters
551
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
552
+ def get_api_charts_by_chart_id_map_draft_with_http_info(chart_id, opts = {})
553
+ if @api_client.config.debugging
554
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_map_draft ...'
555
+ end
556
+ # verify the required parameter 'chart_id' is set
557
+ if @api_client.config.client_side_validation && chart_id.nil?
558
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_map_draft"
559
+ end
560
+ if @api_client.config.client_side_validation && chart_id.to_s.length > 36
561
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.get_api_charts_by_chart_id_map_draft, the character length must be smaller than or equal to 36.'
562
+ end
563
+
564
+ if @api_client.config.client_side_validation && chart_id.to_s.length < 36
565
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.get_api_charts_by_chart_id_map_draft, the character length must be great than or equal to 36.'
566
+ end
567
+
568
+ # resource path
569
+ local_var_path = '/api/charts/{chartId}/map/draft'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
570
+
571
+ # query parameters
572
+ query_params = opts[:query_params] || {}
573
+
574
+ # header parameters
575
+ header_params = opts[:header_params] || {}
576
+
577
+ # form parameters
578
+ form_params = opts[:form_params] || {}
579
+
580
+ # http body (model)
581
+ post_body = opts[:debug_body]
582
+
583
+ # return_type
584
+ return_type = opts[:debug_return_type]
585
+
586
+ # auth_names
587
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
588
+
589
+ new_options = opts.merge(
590
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_map_draft",
591
+ :header_params => header_params,
592
+ :query_params => query_params,
593
+ :form_params => form_params,
594
+ :body => post_body,
595
+ :auth_names => auth_names,
596
+ :return_type => return_type
597
+ )
598
+
599
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
600
+ if @api_client.config.debugging
601
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_map_draft\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
602
+ end
603
+ return data, status_code, headers
604
+ end
605
+
606
+ # Chart report by category (CSV)
607
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
608
+ # @param chart_id [String]
609
+ # @param [Hash] opts the optional parameters
610
+ # @option opts [String] :category Only this category bucket.
611
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
612
+ # @return [nil]
613
+ def get_api_charts_by_chart_id_reports_by_category_csv(chart_id, opts = {})
614
+ get_api_charts_by_chart_id_reports_by_category_csv_with_http_info(chart_id, opts)
615
+ nil
616
+ end
617
+
618
+ # Chart report by category (CSV)
619
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
620
+ # @param chart_id [String]
621
+ # @param [Hash] opts the optional parameters
622
+ # @option opts [String] :category Only this category bucket.
623
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
624
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
625
+ def get_api_charts_by_chart_id_reports_by_category_csv_with_http_info(chart_id, opts = {})
626
+ if @api_client.config.debugging
627
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_category_csv ...'
628
+ end
629
+ # verify the required parameter 'chart_id' is set
630
+ if @api_client.config.client_side_validation && chart_id.nil?
631
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_csv"
632
+ end
633
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
634
+ if @api_client.config.client_side_validation && chart_id !~ pattern
635
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_csv, must conform to the pattern #{pattern}."
636
+ end
637
+
638
+ if @api_client.config.client_side_validation && !opts[:'category'].nil? && opts[:'category'].to_s.length > 128
639
+ fail ArgumentError, 'invalid value for "opts[:"category"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_csv, the character length must be smaller than or equal to 128.'
640
+ end
641
+
642
+ if @api_client.config.client_side_validation && !opts[:'category'].nil? && opts[:'category'].to_s.length < 1
643
+ fail ArgumentError, 'invalid value for "opts[:"category"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_csv, the character length must be great than or equal to 1.'
644
+ end
645
+
646
+ allowable_values = ["published", "draft"]
647
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
648
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
649
+ end
650
+ # resource path
651
+ local_var_path = '/api/charts/{chartId}/reports/by-category.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
652
+
653
+ # query parameters
654
+ query_params = opts[:query_params] || {}
655
+ query_params[:'category'] = opts[:'category'] if !opts[:'category'].nil?
656
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
657
+
658
+ # header parameters
659
+ header_params = opts[:header_params] || {}
660
+
661
+ # form parameters
662
+ form_params = opts[:form_params] || {}
663
+
664
+ # http body (model)
665
+ post_body = opts[:debug_body]
666
+
667
+ # return_type
668
+ return_type = opts[:debug_return_type]
669
+
670
+ # auth_names
671
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
672
+
673
+ new_options = opts.merge(
674
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_category_csv",
675
+ :header_params => header_params,
676
+ :query_params => query_params,
677
+ :form_params => form_params,
678
+ :body => post_body,
679
+ :auth_names => auth_names,
680
+ :return_type => return_type
681
+ )
682
+
683
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
684
+ if @api_client.config.debugging
685
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_category_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
686
+ end
687
+ return data, status_code, headers
688
+ end
689
+
690
+ # Chart report by category
691
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
692
+ # @param chart_id [String]
693
+ # @param [Hash] opts the optional parameters
694
+ # @option opts [String] :category Only this category bucket.
695
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
696
+ # @return [nil]
697
+ def get_api_charts_by_chart_id_reports_by_category_json(chart_id, opts = {})
698
+ get_api_charts_by_chart_id_reports_by_category_json_with_http_info(chart_id, opts)
699
+ nil
700
+ end
701
+
702
+ # Chart report by category
703
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
704
+ # @param chart_id [String]
705
+ # @param [Hash] opts the optional parameters
706
+ # @option opts [String] :category Only this category bucket.
707
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
708
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
709
+ def get_api_charts_by_chart_id_reports_by_category_json_with_http_info(chart_id, opts = {})
710
+ if @api_client.config.debugging
711
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_category_json ...'
712
+ end
713
+ # verify the required parameter 'chart_id' is set
714
+ if @api_client.config.client_side_validation && chart_id.nil?
715
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_json"
716
+ end
717
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
718
+ if @api_client.config.client_side_validation && chart_id !~ pattern
719
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_json, must conform to the pattern #{pattern}."
720
+ end
721
+
722
+ if @api_client.config.client_side_validation && !opts[:'category'].nil? && opts[:'category'].to_s.length > 128
723
+ fail ArgumentError, 'invalid value for "opts[:"category"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_json, the character length must be smaller than or equal to 128.'
724
+ end
725
+
726
+ if @api_client.config.client_side_validation && !opts[:'category'].nil? && opts[:'category'].to_s.length < 1
727
+ fail ArgumentError, 'invalid value for "opts[:"category"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_json, the character length must be great than or equal to 1.'
728
+ end
729
+
730
+ allowable_values = ["published", "draft"]
731
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
732
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
733
+ end
734
+ # resource path
735
+ local_var_path = '/api/charts/{chartId}/reports/by-category.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
736
+
737
+ # query parameters
738
+ query_params = opts[:query_params] || {}
739
+ query_params[:'category'] = opts[:'category'] if !opts[:'category'].nil?
740
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
741
+
742
+ # header parameters
743
+ header_params = opts[:header_params] || {}
744
+
745
+ # form parameters
746
+ form_params = opts[:form_params] || {}
747
+
748
+ # http body (model)
749
+ post_body = opts[:debug_body]
750
+
751
+ # return_type
752
+ return_type = opts[:debug_return_type]
753
+
754
+ # auth_names
755
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
756
+
757
+ new_options = opts.merge(
758
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_category_json",
759
+ :header_params => header_params,
760
+ :query_params => query_params,
761
+ :form_params => form_params,
762
+ :body => post_body,
763
+ :auth_names => auth_names,
764
+ :return_type => return_type
765
+ )
766
+
767
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
768
+ if @api_client.config.debugging
769
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_category_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
770
+ end
771
+ return data, status_code, headers
772
+ end
773
+
774
+ # Chart report by category key (CSV)
775
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
776
+ # @param chart_id [String]
777
+ # @param [Hash] opts the optional parameters
778
+ # @option opts [String] :category_key Only this categoryKey bucket.
779
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
780
+ # @return [nil]
781
+ def get_api_charts_by_chart_id_reports_by_category_key_csv(chart_id, opts = {})
782
+ get_api_charts_by_chart_id_reports_by_category_key_csv_with_http_info(chart_id, opts)
783
+ nil
784
+ end
785
+
786
+ # Chart report by category key (CSV)
787
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
788
+ # @param chart_id [String]
789
+ # @param [Hash] opts the optional parameters
790
+ # @option opts [String] :category_key Only this categoryKey bucket.
791
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
792
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
793
+ def get_api_charts_by_chart_id_reports_by_category_key_csv_with_http_info(chart_id, opts = {})
794
+ if @api_client.config.debugging
795
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_csv ...'
796
+ end
797
+ # verify the required parameter 'chart_id' is set
798
+ if @api_client.config.client_side_validation && chart_id.nil?
799
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_csv"
800
+ end
801
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
802
+ if @api_client.config.client_side_validation && chart_id !~ pattern
803
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_csv, must conform to the pattern #{pattern}."
804
+ end
805
+
806
+ if @api_client.config.client_side_validation && !opts[:'category_key'].nil? && opts[:'category_key'].to_s.length > 128
807
+ fail ArgumentError, 'invalid value for "opts[:"category_key"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_csv, the character length must be smaller than or equal to 128.'
808
+ end
809
+
810
+ if @api_client.config.client_side_validation && !opts[:'category_key'].nil? && opts[:'category_key'].to_s.length < 1
811
+ fail ArgumentError, 'invalid value for "opts[:"category_key"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_csv, the character length must be great than or equal to 1.'
812
+ end
813
+
814
+ allowable_values = ["published", "draft"]
815
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
816
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
817
+ end
818
+ # resource path
819
+ local_var_path = '/api/charts/{chartId}/reports/by-category-key.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
820
+
821
+ # query parameters
822
+ query_params = opts[:query_params] || {}
823
+ query_params[:'categoryKey'] = opts[:'category_key'] if !opts[:'category_key'].nil?
824
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
825
+
826
+ # header parameters
827
+ header_params = opts[:header_params] || {}
828
+
829
+ # form parameters
830
+ form_params = opts[:form_params] || {}
831
+
832
+ # http body (model)
833
+ post_body = opts[:debug_body]
834
+
835
+ # return_type
836
+ return_type = opts[:debug_return_type]
837
+
838
+ # auth_names
839
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
840
+
841
+ new_options = opts.merge(
842
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_csv",
843
+ :header_params => header_params,
844
+ :query_params => query_params,
845
+ :form_params => form_params,
846
+ :body => post_body,
847
+ :auth_names => auth_names,
848
+ :return_type => return_type
849
+ )
850
+
851
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
852
+ if @api_client.config.debugging
853
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_category_key_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
854
+ end
855
+ return data, status_code, headers
856
+ end
857
+
858
+ # Chart report by category key
859
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
860
+ # @param chart_id [String]
861
+ # @param [Hash] opts the optional parameters
862
+ # @option opts [String] :category_key Only this categoryKey bucket.
863
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
864
+ # @return [nil]
865
+ def get_api_charts_by_chart_id_reports_by_category_key_json(chart_id, opts = {})
866
+ get_api_charts_by_chart_id_reports_by_category_key_json_with_http_info(chart_id, opts)
867
+ nil
868
+ end
869
+
870
+ # Chart report by category key
871
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
872
+ # @param chart_id [String]
873
+ # @param [Hash] opts the optional parameters
874
+ # @option opts [String] :category_key Only this categoryKey bucket.
875
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
876
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
877
+ def get_api_charts_by_chart_id_reports_by_category_key_json_with_http_info(chart_id, opts = {})
878
+ if @api_client.config.debugging
879
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_json ...'
880
+ end
881
+ # verify the required parameter 'chart_id' is set
882
+ if @api_client.config.client_side_validation && chart_id.nil?
883
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_json"
884
+ end
885
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
886
+ if @api_client.config.client_side_validation && chart_id !~ pattern
887
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_json, must conform to the pattern #{pattern}."
888
+ end
889
+
890
+ if @api_client.config.client_side_validation && !opts[:'category_key'].nil? && opts[:'category_key'].to_s.length > 128
891
+ fail ArgumentError, 'invalid value for "opts[:"category_key"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_json, the character length must be smaller than or equal to 128.'
892
+ end
893
+
894
+ if @api_client.config.client_side_validation && !opts[:'category_key'].nil? && opts[:'category_key'].to_s.length < 1
895
+ fail ArgumentError, 'invalid value for "opts[:"category_key"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_json, the character length must be great than or equal to 1.'
896
+ end
897
+
898
+ allowable_values = ["published", "draft"]
899
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
900
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
901
+ end
902
+ # resource path
903
+ local_var_path = '/api/charts/{chartId}/reports/by-category-key.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
904
+
905
+ # query parameters
906
+ query_params = opts[:query_params] || {}
907
+ query_params[:'categoryKey'] = opts[:'category_key'] if !opts[:'category_key'].nil?
908
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
909
+
910
+ # header parameters
911
+ header_params = opts[:header_params] || {}
912
+
913
+ # form parameters
914
+ form_params = opts[:form_params] || {}
915
+
916
+ # http body (model)
917
+ post_body = opts[:debug_body]
918
+
919
+ # return_type
920
+ return_type = opts[:debug_return_type]
921
+
922
+ # auth_names
923
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
924
+
925
+ new_options = opts.merge(
926
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_category_key_json",
927
+ :header_params => header_params,
928
+ :query_params => query_params,
929
+ :form_params => form_params,
930
+ :body => post_body,
931
+ :auth_names => auth_names,
932
+ :return_type => return_type
933
+ )
934
+
935
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
936
+ if @api_client.config.debugging
937
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_category_key_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
938
+ end
939
+ return data, status_code, headers
940
+ end
941
+
942
+ # Chart report by category label (CSV)
943
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
944
+ # @param chart_id [String]
945
+ # @param [Hash] opts the optional parameters
946
+ # @option opts [String] :category_label Only this categoryLabel bucket.
947
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
948
+ # @return [nil]
949
+ def get_api_charts_by_chart_id_reports_by_category_label_csv(chart_id, opts = {})
950
+ get_api_charts_by_chart_id_reports_by_category_label_csv_with_http_info(chart_id, opts)
951
+ nil
952
+ end
953
+
954
+ # Chart report by category label (CSV)
955
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
956
+ # @param chart_id [String]
957
+ # @param [Hash] opts the optional parameters
958
+ # @option opts [String] :category_label Only this categoryLabel bucket.
959
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
960
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
961
+ def get_api_charts_by_chart_id_reports_by_category_label_csv_with_http_info(chart_id, opts = {})
962
+ if @api_client.config.debugging
963
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_csv ...'
964
+ end
965
+ # verify the required parameter 'chart_id' is set
966
+ if @api_client.config.client_side_validation && chart_id.nil?
967
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_csv"
968
+ end
969
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
970
+ if @api_client.config.client_side_validation && chart_id !~ pattern
971
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_csv, must conform to the pattern #{pattern}."
972
+ end
973
+
974
+ if @api_client.config.client_side_validation && !opts[:'category_label'].nil? && opts[:'category_label'].to_s.length > 128
975
+ fail ArgumentError, 'invalid value for "opts[:"category_label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_csv, the character length must be smaller than or equal to 128.'
976
+ end
977
+
978
+ if @api_client.config.client_side_validation && !opts[:'category_label'].nil? && opts[:'category_label'].to_s.length < 1
979
+ fail ArgumentError, 'invalid value for "opts[:"category_label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_csv, the character length must be great than or equal to 1.'
980
+ end
981
+
982
+ allowable_values = ["published", "draft"]
983
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
984
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
985
+ end
986
+ # resource path
987
+ local_var_path = '/api/charts/{chartId}/reports/by-category-label.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
988
+
989
+ # query parameters
990
+ query_params = opts[:query_params] || {}
991
+ query_params[:'categoryLabel'] = opts[:'category_label'] if !opts[:'category_label'].nil?
992
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
993
+
994
+ # header parameters
995
+ header_params = opts[:header_params] || {}
996
+
997
+ # form parameters
998
+ form_params = opts[:form_params] || {}
999
+
1000
+ # http body (model)
1001
+ post_body = opts[:debug_body]
1002
+
1003
+ # return_type
1004
+ return_type = opts[:debug_return_type]
1005
+
1006
+ # auth_names
1007
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1008
+
1009
+ new_options = opts.merge(
1010
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_csv",
1011
+ :header_params => header_params,
1012
+ :query_params => query_params,
1013
+ :form_params => form_params,
1014
+ :body => post_body,
1015
+ :auth_names => auth_names,
1016
+ :return_type => return_type
1017
+ )
1018
+
1019
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1020
+ if @api_client.config.debugging
1021
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_category_label_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1022
+ end
1023
+ return data, status_code, headers
1024
+ end
1025
+
1026
+ # Chart report by category label
1027
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1028
+ # @param chart_id [String]
1029
+ # @param [Hash] opts the optional parameters
1030
+ # @option opts [String] :category_label Only this categoryLabel bucket.
1031
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1032
+ # @return [nil]
1033
+ def get_api_charts_by_chart_id_reports_by_category_label_json(chart_id, opts = {})
1034
+ get_api_charts_by_chart_id_reports_by_category_label_json_with_http_info(chart_id, opts)
1035
+ nil
1036
+ end
1037
+
1038
+ # Chart report by category label
1039
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1040
+ # @param chart_id [String]
1041
+ # @param [Hash] opts the optional parameters
1042
+ # @option opts [String] :category_label Only this categoryLabel bucket.
1043
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1044
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1045
+ def get_api_charts_by_chart_id_reports_by_category_label_json_with_http_info(chart_id, opts = {})
1046
+ if @api_client.config.debugging
1047
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_json ...'
1048
+ end
1049
+ # verify the required parameter 'chart_id' is set
1050
+ if @api_client.config.client_side_validation && chart_id.nil?
1051
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_json"
1052
+ end
1053
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1054
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1055
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_json, must conform to the pattern #{pattern}."
1056
+ end
1057
+
1058
+ if @api_client.config.client_side_validation && !opts[:'category_label'].nil? && opts[:'category_label'].to_s.length > 128
1059
+ fail ArgumentError, 'invalid value for "opts[:"category_label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_json, the character length must be smaller than or equal to 128.'
1060
+ end
1061
+
1062
+ if @api_client.config.client_side_validation && !opts[:'category_label'].nil? && opts[:'category_label'].to_s.length < 1
1063
+ fail ArgumentError, 'invalid value for "opts[:"category_label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_json, the character length must be great than or equal to 1.'
1064
+ end
1065
+
1066
+ allowable_values = ["published", "draft"]
1067
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1068
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1069
+ end
1070
+ # resource path
1071
+ local_var_path = '/api/charts/{chartId}/reports/by-category-label.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1072
+
1073
+ # query parameters
1074
+ query_params = opts[:query_params] || {}
1075
+ query_params[:'categoryLabel'] = opts[:'category_label'] if !opts[:'category_label'].nil?
1076
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1077
+
1078
+ # header parameters
1079
+ header_params = opts[:header_params] || {}
1080
+
1081
+ # form parameters
1082
+ form_params = opts[:form_params] || {}
1083
+
1084
+ # http body (model)
1085
+ post_body = opts[:debug_body]
1086
+
1087
+ # return_type
1088
+ return_type = opts[:debug_return_type]
1089
+
1090
+ # auth_names
1091
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1092
+
1093
+ new_options = opts.merge(
1094
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_category_label_json",
1095
+ :header_params => header_params,
1096
+ :query_params => query_params,
1097
+ :form_params => form_params,
1098
+ :body => post_body,
1099
+ :auth_names => auth_names,
1100
+ :return_type => return_type
1101
+ )
1102
+
1103
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1104
+ if @api_client.config.debugging
1105
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_category_label_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1106
+ end
1107
+ return data, status_code, headers
1108
+ end
1109
+
1110
+ # Chart report by label (CSV)
1111
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1112
+ # @param chart_id [String]
1113
+ # @param [Hash] opts the optional parameters
1114
+ # @option opts [String] :label Only this label bucket.
1115
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1116
+ # @return [nil]
1117
+ def get_api_charts_by_chart_id_reports_by_label_csv(chart_id, opts = {})
1118
+ get_api_charts_by_chart_id_reports_by_label_csv_with_http_info(chart_id, opts)
1119
+ nil
1120
+ end
1121
+
1122
+ # Chart report by label (CSV)
1123
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1124
+ # @param chart_id [String]
1125
+ # @param [Hash] opts the optional parameters
1126
+ # @option opts [String] :label Only this label bucket.
1127
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1128
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1129
+ def get_api_charts_by_chart_id_reports_by_label_csv_with_http_info(chart_id, opts = {})
1130
+ if @api_client.config.debugging
1131
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_label_csv ...'
1132
+ end
1133
+ # verify the required parameter 'chart_id' is set
1134
+ if @api_client.config.client_side_validation && chart_id.nil?
1135
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_csv"
1136
+ end
1137
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1138
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1139
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_csv, must conform to the pattern #{pattern}."
1140
+ end
1141
+
1142
+ if @api_client.config.client_side_validation && !opts[:'label'].nil? && opts[:'label'].to_s.length > 128
1143
+ fail ArgumentError, 'invalid value for "opts[:"label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_csv, the character length must be smaller than or equal to 128.'
1144
+ end
1145
+
1146
+ if @api_client.config.client_side_validation && !opts[:'label'].nil? && opts[:'label'].to_s.length < 1
1147
+ fail ArgumentError, 'invalid value for "opts[:"label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_csv, the character length must be great than or equal to 1.'
1148
+ end
1149
+
1150
+ allowable_values = ["published", "draft"]
1151
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1152
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1153
+ end
1154
+ # resource path
1155
+ local_var_path = '/api/charts/{chartId}/reports/by-label.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1156
+
1157
+ # query parameters
1158
+ query_params = opts[:query_params] || {}
1159
+ query_params[:'label'] = opts[:'label'] if !opts[:'label'].nil?
1160
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1161
+
1162
+ # header parameters
1163
+ header_params = opts[:header_params] || {}
1164
+
1165
+ # form parameters
1166
+ form_params = opts[:form_params] || {}
1167
+
1168
+ # http body (model)
1169
+ post_body = opts[:debug_body]
1170
+
1171
+ # return_type
1172
+ return_type = opts[:debug_return_type]
1173
+
1174
+ # auth_names
1175
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1176
+
1177
+ new_options = opts.merge(
1178
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_label_csv",
1179
+ :header_params => header_params,
1180
+ :query_params => query_params,
1181
+ :form_params => form_params,
1182
+ :body => post_body,
1183
+ :auth_names => auth_names,
1184
+ :return_type => return_type
1185
+ )
1186
+
1187
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1188
+ if @api_client.config.debugging
1189
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_label_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1190
+ end
1191
+ return data, status_code, headers
1192
+ end
1193
+
1194
+ # Chart report by label
1195
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1196
+ # @param chart_id [String]
1197
+ # @param [Hash] opts the optional parameters
1198
+ # @option opts [String] :label Only this label bucket.
1199
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1200
+ # @return [nil]
1201
+ def get_api_charts_by_chart_id_reports_by_label_json(chart_id, opts = {})
1202
+ get_api_charts_by_chart_id_reports_by_label_json_with_http_info(chart_id, opts)
1203
+ nil
1204
+ end
1205
+
1206
+ # Chart report by label
1207
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1208
+ # @param chart_id [String]
1209
+ # @param [Hash] opts the optional parameters
1210
+ # @option opts [String] :label Only this label bucket.
1211
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1212
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1213
+ def get_api_charts_by_chart_id_reports_by_label_json_with_http_info(chart_id, opts = {})
1214
+ if @api_client.config.debugging
1215
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_label_json ...'
1216
+ end
1217
+ # verify the required parameter 'chart_id' is set
1218
+ if @api_client.config.client_side_validation && chart_id.nil?
1219
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_json"
1220
+ end
1221
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1222
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1223
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_json, must conform to the pattern #{pattern}."
1224
+ end
1225
+
1226
+ if @api_client.config.client_side_validation && !opts[:'label'].nil? && opts[:'label'].to_s.length > 128
1227
+ fail ArgumentError, 'invalid value for "opts[:"label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_json, the character length must be smaller than or equal to 128.'
1228
+ end
1229
+
1230
+ if @api_client.config.client_side_validation && !opts[:'label'].nil? && opts[:'label'].to_s.length < 1
1231
+ fail ArgumentError, 'invalid value for "opts[:"label"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_label_json, the character length must be great than or equal to 1.'
1232
+ end
1233
+
1234
+ allowable_values = ["published", "draft"]
1235
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1236
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1237
+ end
1238
+ # resource path
1239
+ local_var_path = '/api/charts/{chartId}/reports/by-label.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1240
+
1241
+ # query parameters
1242
+ query_params = opts[:query_params] || {}
1243
+ query_params[:'label'] = opts[:'label'] if !opts[:'label'].nil?
1244
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1245
+
1246
+ # header parameters
1247
+ header_params = opts[:header_params] || {}
1248
+
1249
+ # form parameters
1250
+ form_params = opts[:form_params] || {}
1251
+
1252
+ # http body (model)
1253
+ post_body = opts[:debug_body]
1254
+
1255
+ # return_type
1256
+ return_type = opts[:debug_return_type]
1257
+
1258
+ # auth_names
1259
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1260
+
1261
+ new_options = opts.merge(
1262
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_label_json",
1263
+ :header_params => header_params,
1264
+ :query_params => query_params,
1265
+ :form_params => form_params,
1266
+ :body => post_body,
1267
+ :auth_names => auth_names,
1268
+ :return_type => return_type
1269
+ )
1270
+
1271
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1272
+ if @api_client.config.debugging
1273
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_label_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1274
+ end
1275
+ return data, status_code, headers
1276
+ end
1277
+
1278
+ # Chart report by object type (CSV)
1279
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1280
+ # @param chart_id [String]
1281
+ # @param [Hash] opts the optional parameters
1282
+ # @option opts [String] :object_type Only this objectType bucket.
1283
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1284
+ # @return [nil]
1285
+ def get_api_charts_by_chart_id_reports_by_object_type_csv(chart_id, opts = {})
1286
+ get_api_charts_by_chart_id_reports_by_object_type_csv_with_http_info(chart_id, opts)
1287
+ nil
1288
+ end
1289
+
1290
+ # Chart report by object type (CSV)
1291
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1292
+ # @param chart_id [String]
1293
+ # @param [Hash] opts the optional parameters
1294
+ # @option opts [String] :object_type Only this objectType bucket.
1295
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1296
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1297
+ def get_api_charts_by_chart_id_reports_by_object_type_csv_with_http_info(chart_id, opts = {})
1298
+ if @api_client.config.debugging
1299
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_csv ...'
1300
+ end
1301
+ # verify the required parameter 'chart_id' is set
1302
+ if @api_client.config.client_side_validation && chart_id.nil?
1303
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_csv"
1304
+ end
1305
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1306
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1307
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_csv, must conform to the pattern #{pattern}."
1308
+ end
1309
+
1310
+ if @api_client.config.client_side_validation && !opts[:'object_type'].nil? && opts[:'object_type'].to_s.length > 128
1311
+ fail ArgumentError, 'invalid value for "opts[:"object_type"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_csv, the character length must be smaller than or equal to 128.'
1312
+ end
1313
+
1314
+ if @api_client.config.client_side_validation && !opts[:'object_type'].nil? && opts[:'object_type'].to_s.length < 1
1315
+ fail ArgumentError, 'invalid value for "opts[:"object_type"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_csv, the character length must be great than or equal to 1.'
1316
+ end
1317
+
1318
+ allowable_values = ["published", "draft"]
1319
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1320
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1321
+ end
1322
+ # resource path
1323
+ local_var_path = '/api/charts/{chartId}/reports/by-object-type.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1324
+
1325
+ # query parameters
1326
+ query_params = opts[:query_params] || {}
1327
+ query_params[:'objectType'] = opts[:'object_type'] if !opts[:'object_type'].nil?
1328
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1329
+
1330
+ # header parameters
1331
+ header_params = opts[:header_params] || {}
1332
+
1333
+ # form parameters
1334
+ form_params = opts[:form_params] || {}
1335
+
1336
+ # http body (model)
1337
+ post_body = opts[:debug_body]
1338
+
1339
+ # return_type
1340
+ return_type = opts[:debug_return_type]
1341
+
1342
+ # auth_names
1343
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1344
+
1345
+ new_options = opts.merge(
1346
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_csv",
1347
+ :header_params => header_params,
1348
+ :query_params => query_params,
1349
+ :form_params => form_params,
1350
+ :body => post_body,
1351
+ :auth_names => auth_names,
1352
+ :return_type => return_type
1353
+ )
1354
+
1355
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1356
+ if @api_client.config.debugging
1357
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_object_type_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1358
+ end
1359
+ return data, status_code, headers
1360
+ end
1361
+
1362
+ # Chart report by object type
1363
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1364
+ # @param chart_id [String]
1365
+ # @param [Hash] opts the optional parameters
1366
+ # @option opts [String] :object_type Only this objectType bucket.
1367
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1368
+ # @return [nil]
1369
+ def get_api_charts_by_chart_id_reports_by_object_type_json(chart_id, opts = {})
1370
+ get_api_charts_by_chart_id_reports_by_object_type_json_with_http_info(chart_id, opts)
1371
+ nil
1372
+ end
1373
+
1374
+ # Chart report by object type
1375
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1376
+ # @param chart_id [String]
1377
+ # @param [Hash] opts the optional parameters
1378
+ # @option opts [String] :object_type Only this objectType bucket.
1379
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1380
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1381
+ def get_api_charts_by_chart_id_reports_by_object_type_json_with_http_info(chart_id, opts = {})
1382
+ if @api_client.config.debugging
1383
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_json ...'
1384
+ end
1385
+ # verify the required parameter 'chart_id' is set
1386
+ if @api_client.config.client_side_validation && chart_id.nil?
1387
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_json"
1388
+ end
1389
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1390
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1391
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_json, must conform to the pattern #{pattern}."
1392
+ end
1393
+
1394
+ if @api_client.config.client_side_validation && !opts[:'object_type'].nil? && opts[:'object_type'].to_s.length > 128
1395
+ fail ArgumentError, 'invalid value for "opts[:"object_type"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_json, the character length must be smaller than or equal to 128.'
1396
+ end
1397
+
1398
+ if @api_client.config.client_side_validation && !opts[:'object_type'].nil? && opts[:'object_type'].to_s.length < 1
1399
+ fail ArgumentError, 'invalid value for "opts[:"object_type"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_json, the character length must be great than or equal to 1.'
1400
+ end
1401
+
1402
+ allowable_values = ["published", "draft"]
1403
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1404
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1405
+ end
1406
+ # resource path
1407
+ local_var_path = '/api/charts/{chartId}/reports/by-object-type.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1408
+
1409
+ # query parameters
1410
+ query_params = opts[:query_params] || {}
1411
+ query_params[:'objectType'] = opts[:'object_type'] if !opts[:'object_type'].nil?
1412
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1413
+
1414
+ # header parameters
1415
+ header_params = opts[:header_params] || {}
1416
+
1417
+ # form parameters
1418
+ form_params = opts[:form_params] || {}
1419
+
1420
+ # http body (model)
1421
+ post_body = opts[:debug_body]
1422
+
1423
+ # return_type
1424
+ return_type = opts[:debug_return_type]
1425
+
1426
+ # auth_names
1427
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1428
+
1429
+ new_options = opts.merge(
1430
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_object_type_json",
1431
+ :header_params => header_params,
1432
+ :query_params => query_params,
1433
+ :form_params => form_params,
1434
+ :body => post_body,
1435
+ :auth_names => auth_names,
1436
+ :return_type => return_type
1437
+ )
1438
+
1439
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1440
+ if @api_client.config.debugging
1441
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_object_type_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1442
+ end
1443
+ return data, status_code, headers
1444
+ end
1445
+
1446
+ # Chart report by section (CSV)
1447
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1448
+ # @param chart_id [String]
1449
+ # @param [Hash] opts the optional parameters
1450
+ # @option opts [String] :section Only this section bucket.
1451
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1452
+ # @return [nil]
1453
+ def get_api_charts_by_chart_id_reports_by_section_csv(chart_id, opts = {})
1454
+ get_api_charts_by_chart_id_reports_by_section_csv_with_http_info(chart_id, opts)
1455
+ nil
1456
+ end
1457
+
1458
+ # Chart report by section (CSV)
1459
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1460
+ # @param chart_id [String]
1461
+ # @param [Hash] opts the optional parameters
1462
+ # @option opts [String] :section Only this section bucket.
1463
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1464
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1465
+ def get_api_charts_by_chart_id_reports_by_section_csv_with_http_info(chart_id, opts = {})
1466
+ if @api_client.config.debugging
1467
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_section_csv ...'
1468
+ end
1469
+ # verify the required parameter 'chart_id' is set
1470
+ if @api_client.config.client_side_validation && chart_id.nil?
1471
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_csv"
1472
+ end
1473
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1474
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1475
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_csv, must conform to the pattern #{pattern}."
1476
+ end
1477
+
1478
+ if @api_client.config.client_side_validation && !opts[:'section'].nil? && opts[:'section'].to_s.length > 128
1479
+ fail ArgumentError, 'invalid value for "opts[:"section"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_csv, the character length must be smaller than or equal to 128.'
1480
+ end
1481
+
1482
+ if @api_client.config.client_side_validation && !opts[:'section'].nil? && opts[:'section'].to_s.length < 1
1483
+ fail ArgumentError, 'invalid value for "opts[:"section"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_csv, the character length must be great than or equal to 1.'
1484
+ end
1485
+
1486
+ allowable_values = ["published", "draft"]
1487
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1488
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1489
+ end
1490
+ # resource path
1491
+ local_var_path = '/api/charts/{chartId}/reports/by-section.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1492
+
1493
+ # query parameters
1494
+ query_params = opts[:query_params] || {}
1495
+ query_params[:'section'] = opts[:'section'] if !opts[:'section'].nil?
1496
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1497
+
1498
+ # header parameters
1499
+ header_params = opts[:header_params] || {}
1500
+
1501
+ # form parameters
1502
+ form_params = opts[:form_params] || {}
1503
+
1504
+ # http body (model)
1505
+ post_body = opts[:debug_body]
1506
+
1507
+ # return_type
1508
+ return_type = opts[:debug_return_type]
1509
+
1510
+ # auth_names
1511
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1512
+
1513
+ new_options = opts.merge(
1514
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_section_csv",
1515
+ :header_params => header_params,
1516
+ :query_params => query_params,
1517
+ :form_params => form_params,
1518
+ :body => post_body,
1519
+ :auth_names => auth_names,
1520
+ :return_type => return_type
1521
+ )
1522
+
1523
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1524
+ if @api_client.config.debugging
1525
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_section_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1526
+ end
1527
+ return data, status_code, headers
1528
+ end
1529
+
1530
+ # Chart report by section
1531
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1532
+ # @param chart_id [String]
1533
+ # @param [Hash] opts the optional parameters
1534
+ # @option opts [String] :section Only this section bucket.
1535
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1536
+ # @return [nil]
1537
+ def get_api_charts_by_chart_id_reports_by_section_json(chart_id, opts = {})
1538
+ get_api_charts_by_chart_id_reports_by_section_json_with_http_info(chart_id, opts)
1539
+ nil
1540
+ end
1541
+
1542
+ # Chart report by section
1543
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1544
+ # @param chart_id [String]
1545
+ # @param [Hash] opts the optional parameters
1546
+ # @option opts [String] :section Only this section bucket.
1547
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1548
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1549
+ def get_api_charts_by_chart_id_reports_by_section_json_with_http_info(chart_id, opts = {})
1550
+ if @api_client.config.debugging
1551
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_section_json ...'
1552
+ end
1553
+ # verify the required parameter 'chart_id' is set
1554
+ if @api_client.config.client_side_validation && chart_id.nil?
1555
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_json"
1556
+ end
1557
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1558
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1559
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_json, must conform to the pattern #{pattern}."
1560
+ end
1561
+
1562
+ if @api_client.config.client_side_validation && !opts[:'section'].nil? && opts[:'section'].to_s.length > 128
1563
+ fail ArgumentError, 'invalid value for "opts[:"section"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_json, the character length must be smaller than or equal to 128.'
1564
+ end
1565
+
1566
+ if @api_client.config.client_side_validation && !opts[:'section'].nil? && opts[:'section'].to_s.length < 1
1567
+ fail ArgumentError, 'invalid value for "opts[:"section"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_section_json, the character length must be great than or equal to 1.'
1568
+ end
1569
+
1570
+ allowable_values = ["published", "draft"]
1571
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1572
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1573
+ end
1574
+ # resource path
1575
+ local_var_path = '/api/charts/{chartId}/reports/by-section.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1576
+
1577
+ # query parameters
1578
+ query_params = opts[:query_params] || {}
1579
+ query_params[:'section'] = opts[:'section'] if !opts[:'section'].nil?
1580
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1581
+
1582
+ # header parameters
1583
+ header_params = opts[:header_params] || {}
1584
+
1585
+ # form parameters
1586
+ form_params = opts[:form_params] || {}
1587
+
1588
+ # http body (model)
1589
+ post_body = opts[:debug_body]
1590
+
1591
+ # return_type
1592
+ return_type = opts[:debug_return_type]
1593
+
1594
+ # auth_names
1595
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1596
+
1597
+ new_options = opts.merge(
1598
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_section_json",
1599
+ :header_params => header_params,
1600
+ :query_params => query_params,
1601
+ :form_params => form_params,
1602
+ :body => post_body,
1603
+ :auth_names => auth_names,
1604
+ :return_type => return_type
1605
+ )
1606
+
1607
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1608
+ if @api_client.config.debugging
1609
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_section_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1610
+ end
1611
+ return data, status_code, headers
1612
+ end
1613
+
1614
+ # Chart report by zone (CSV)
1615
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1616
+ # @param chart_id [String]
1617
+ # @param [Hash] opts the optional parameters
1618
+ # @option opts [String] :zone Only this zone bucket.
1619
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1620
+ # @return [nil]
1621
+ def get_api_charts_by_chart_id_reports_by_zone_csv(chart_id, opts = {})
1622
+ get_api_charts_by_chart_id_reports_by_zone_csv_with_http_info(chart_id, opts)
1623
+ nil
1624
+ end
1625
+
1626
+ # Chart report by zone (CSV)
1627
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1628
+ # @param chart_id [String]
1629
+ # @param [Hash] opts the optional parameters
1630
+ # @option opts [String] :zone Only this zone bucket.
1631
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1632
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1633
+ def get_api_charts_by_chart_id_reports_by_zone_csv_with_http_info(chart_id, opts = {})
1634
+ if @api_client.config.debugging
1635
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_zone_csv ...'
1636
+ end
1637
+ # verify the required parameter 'chart_id' is set
1638
+ if @api_client.config.client_side_validation && chart_id.nil?
1639
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_csv"
1640
+ end
1641
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1642
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1643
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_csv, must conform to the pattern #{pattern}."
1644
+ end
1645
+
1646
+ if @api_client.config.client_side_validation && !opts[:'zone'].nil? && opts[:'zone'].to_s.length > 128
1647
+ fail ArgumentError, 'invalid value for "opts[:"zone"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_csv, the character length must be smaller than or equal to 128.'
1648
+ end
1649
+
1650
+ if @api_client.config.client_side_validation && !opts[:'zone'].nil? && opts[:'zone'].to_s.length < 1
1651
+ fail ArgumentError, 'invalid value for "opts[:"zone"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_csv, the character length must be great than or equal to 1.'
1652
+ end
1653
+
1654
+ allowable_values = ["published", "draft"]
1655
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1656
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1657
+ end
1658
+ # resource path
1659
+ local_var_path = '/api/charts/{chartId}/reports/by-zone.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1660
+
1661
+ # query parameters
1662
+ query_params = opts[:query_params] || {}
1663
+ query_params[:'zone'] = opts[:'zone'] if !opts[:'zone'].nil?
1664
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1665
+
1666
+ # header parameters
1667
+ header_params = opts[:header_params] || {}
1668
+
1669
+ # form parameters
1670
+ form_params = opts[:form_params] || {}
1671
+
1672
+ # http body (model)
1673
+ post_body = opts[:debug_body]
1674
+
1675
+ # return_type
1676
+ return_type = opts[:debug_return_type]
1677
+
1678
+ # auth_names
1679
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1680
+
1681
+ new_options = opts.merge(
1682
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_zone_csv",
1683
+ :header_params => header_params,
1684
+ :query_params => query_params,
1685
+ :form_params => form_params,
1686
+ :body => post_body,
1687
+ :auth_names => auth_names,
1688
+ :return_type => return_type
1689
+ )
1690
+
1691
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1692
+ if @api_client.config.debugging
1693
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_zone_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1694
+ end
1695
+ return data, status_code, headers
1696
+ end
1697
+
1698
+ # Chart report by zone
1699
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1700
+ # @param chart_id [String]
1701
+ # @param [Hash] opts the optional parameters
1702
+ # @option opts [String] :zone Only this zone bucket.
1703
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1704
+ # @return [nil]
1705
+ def get_api_charts_by_chart_id_reports_by_zone_json(chart_id, opts = {})
1706
+ get_api_charts_by_chart_id_reports_by_zone_json_with_http_info(chart_id, opts)
1707
+ nil
1708
+ end
1709
+
1710
+ # Chart report by zone
1711
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1712
+ # @param chart_id [String]
1713
+ # @param [Hash] opts the optional parameters
1714
+ # @option opts [String] :zone Only this zone bucket.
1715
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1716
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1717
+ def get_api_charts_by_chart_id_reports_by_zone_json_with_http_info(chart_id, opts = {})
1718
+ if @api_client.config.debugging
1719
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_by_zone_json ...'
1720
+ end
1721
+ # verify the required parameter 'chart_id' is set
1722
+ if @api_client.config.client_side_validation && chart_id.nil?
1723
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_json"
1724
+ end
1725
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1726
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1727
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_json, must conform to the pattern #{pattern}."
1728
+ end
1729
+
1730
+ if @api_client.config.client_side_validation && !opts[:'zone'].nil? && opts[:'zone'].to_s.length > 128
1731
+ fail ArgumentError, 'invalid value for "opts[:"zone"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_json, the character length must be smaller than or equal to 128.'
1732
+ end
1733
+
1734
+ if @api_client.config.client_side_validation && !opts[:'zone'].nil? && opts[:'zone'].to_s.length < 1
1735
+ fail ArgumentError, 'invalid value for "opts[:"zone"]" when calling ChartsApi.get_api_charts_by_chart_id_reports_by_zone_json, the character length must be great than or equal to 1.'
1736
+ end
1737
+
1738
+ allowable_values = ["published", "draft"]
1739
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1740
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1741
+ end
1742
+ # resource path
1743
+ local_var_path = '/api/charts/{chartId}/reports/by-zone.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1744
+
1745
+ # query parameters
1746
+ query_params = opts[:query_params] || {}
1747
+ query_params[:'zone'] = opts[:'zone'] if !opts[:'zone'].nil?
1748
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1749
+
1750
+ # header parameters
1751
+ header_params = opts[:header_params] || {}
1752
+
1753
+ # form parameters
1754
+ form_params = opts[:form_params] || {}
1755
+
1756
+ # http body (model)
1757
+ post_body = opts[:debug_body]
1758
+
1759
+ # return_type
1760
+ return_type = opts[:debug_return_type]
1761
+
1762
+ # auth_names
1763
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1764
+
1765
+ new_options = opts.merge(
1766
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_by_zone_json",
1767
+ :header_params => header_params,
1768
+ :query_params => query_params,
1769
+ :form_params => form_params,
1770
+ :body => post_body,
1771
+ :auth_names => auth_names,
1772
+ :return_type => return_type
1773
+ )
1774
+
1775
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1776
+ if @api_client.config.debugging
1777
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_by_zone_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1778
+ end
1779
+ return data, status_code, headers
1780
+ end
1781
+
1782
+ # Chart summary by category (CSV)
1783
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1784
+ # @param chart_id [String]
1785
+ # @param [Hash] opts the optional parameters
1786
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1787
+ # @return [nil]
1788
+ def get_api_charts_by_chart_id_reports_summary_by_category_csv(chart_id, opts = {})
1789
+ get_api_charts_by_chart_id_reports_summary_by_category_csv_with_http_info(chart_id, opts)
1790
+ nil
1791
+ end
1792
+
1793
+ # Chart summary by category (CSV)
1794
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1795
+ # @param chart_id [String]
1796
+ # @param [Hash] opts the optional parameters
1797
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1798
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1799
+ def get_api_charts_by_chart_id_reports_summary_by_category_csv_with_http_info(chart_id, opts = {})
1800
+ if @api_client.config.debugging
1801
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_csv ...'
1802
+ end
1803
+ # verify the required parameter 'chart_id' is set
1804
+ if @api_client.config.client_side_validation && chart_id.nil?
1805
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_csv"
1806
+ end
1807
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1808
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1809
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_csv, must conform to the pattern #{pattern}."
1810
+ end
1811
+
1812
+ allowable_values = ["published", "draft"]
1813
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1814
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1815
+ end
1816
+ # resource path
1817
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-category.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1818
+
1819
+ # query parameters
1820
+ query_params = opts[:query_params] || {}
1821
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1822
+
1823
+ # header parameters
1824
+ header_params = opts[:header_params] || {}
1825
+
1826
+ # form parameters
1827
+ form_params = opts[:form_params] || {}
1828
+
1829
+ # http body (model)
1830
+ post_body = opts[:debug_body]
1831
+
1832
+ # return_type
1833
+ return_type = opts[:debug_return_type]
1834
+
1835
+ # auth_names
1836
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1837
+
1838
+ new_options = opts.merge(
1839
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_csv",
1840
+ :header_params => header_params,
1841
+ :query_params => query_params,
1842
+ :form_params => form_params,
1843
+ :body => post_body,
1844
+ :auth_names => auth_names,
1845
+ :return_type => return_type
1846
+ )
1847
+
1848
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1849
+ if @api_client.config.debugging
1850
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_category_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1851
+ end
1852
+ return data, status_code, headers
1853
+ end
1854
+
1855
+ # Chart summary by category
1856
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1857
+ # @param chart_id [String]
1858
+ # @param [Hash] opts the optional parameters
1859
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1860
+ # @return [nil]
1861
+ def get_api_charts_by_chart_id_reports_summary_by_category_json(chart_id, opts = {})
1862
+ get_api_charts_by_chart_id_reports_summary_by_category_json_with_http_info(chart_id, opts)
1863
+ nil
1864
+ end
1865
+
1866
+ # Chart summary by category
1867
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1868
+ # @param chart_id [String]
1869
+ # @param [Hash] opts the optional parameters
1870
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1871
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1872
+ def get_api_charts_by_chart_id_reports_summary_by_category_json_with_http_info(chart_id, opts = {})
1873
+ if @api_client.config.debugging
1874
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_json ...'
1875
+ end
1876
+ # verify the required parameter 'chart_id' is set
1877
+ if @api_client.config.client_side_validation && chart_id.nil?
1878
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_json"
1879
+ end
1880
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1881
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1882
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_json, must conform to the pattern #{pattern}."
1883
+ end
1884
+
1885
+ allowable_values = ["published", "draft"]
1886
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1887
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1888
+ end
1889
+ # resource path
1890
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-category.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1891
+
1892
+ # query parameters
1893
+ query_params = opts[:query_params] || {}
1894
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1895
+
1896
+ # header parameters
1897
+ header_params = opts[:header_params] || {}
1898
+
1899
+ # form parameters
1900
+ form_params = opts[:form_params] || {}
1901
+
1902
+ # http body (model)
1903
+ post_body = opts[:debug_body]
1904
+
1905
+ # return_type
1906
+ return_type = opts[:debug_return_type]
1907
+
1908
+ # auth_names
1909
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1910
+
1911
+ new_options = opts.merge(
1912
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_json",
1913
+ :header_params => header_params,
1914
+ :query_params => query_params,
1915
+ :form_params => form_params,
1916
+ :body => post_body,
1917
+ :auth_names => auth_names,
1918
+ :return_type => return_type
1919
+ )
1920
+
1921
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1922
+ if @api_client.config.debugging
1923
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_category_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1924
+ end
1925
+ return data, status_code, headers
1926
+ end
1927
+
1928
+ # Chart summary by category key (CSV)
1929
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1930
+ # @param chart_id [String]
1931
+ # @param [Hash] opts the optional parameters
1932
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1933
+ # @return [nil]
1934
+ def get_api_charts_by_chart_id_reports_summary_by_category_key_csv(chart_id, opts = {})
1935
+ get_api_charts_by_chart_id_reports_summary_by_category_key_csv_with_http_info(chart_id, opts)
1936
+ nil
1937
+ end
1938
+
1939
+ # Chart summary by category key (CSV)
1940
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
1941
+ # @param chart_id [String]
1942
+ # @param [Hash] opts the optional parameters
1943
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
1944
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1945
+ def get_api_charts_by_chart_id_reports_summary_by_category_key_csv_with_http_info(chart_id, opts = {})
1946
+ if @api_client.config.debugging
1947
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_csv ...'
1948
+ end
1949
+ # verify the required parameter 'chart_id' is set
1950
+ if @api_client.config.client_side_validation && chart_id.nil?
1951
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_csv"
1952
+ end
1953
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
1954
+ if @api_client.config.client_side_validation && chart_id !~ pattern
1955
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_csv, must conform to the pattern #{pattern}."
1956
+ end
1957
+
1958
+ allowable_values = ["published", "draft"]
1959
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
1960
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
1961
+ end
1962
+ # resource path
1963
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-category-key.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
1964
+
1965
+ # query parameters
1966
+ query_params = opts[:query_params] || {}
1967
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
1968
+
1969
+ # header parameters
1970
+ header_params = opts[:header_params] || {}
1971
+
1972
+ # form parameters
1973
+ form_params = opts[:form_params] || {}
1974
+
1975
+ # http body (model)
1976
+ post_body = opts[:debug_body]
1977
+
1978
+ # return_type
1979
+ return_type = opts[:debug_return_type]
1980
+
1981
+ # auth_names
1982
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
1983
+
1984
+ new_options = opts.merge(
1985
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_csv",
1986
+ :header_params => header_params,
1987
+ :query_params => query_params,
1988
+ :form_params => form_params,
1989
+ :body => post_body,
1990
+ :auth_names => auth_names,
1991
+ :return_type => return_type
1992
+ )
1993
+
1994
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1995
+ if @api_client.config.debugging
1996
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_category_key_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1997
+ end
1998
+ return data, status_code, headers
1999
+ end
2000
+
2001
+ # Chart summary by category key
2002
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2003
+ # @param chart_id [String]
2004
+ # @param [Hash] opts the optional parameters
2005
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2006
+ # @return [nil]
2007
+ def get_api_charts_by_chart_id_reports_summary_by_category_key_json(chart_id, opts = {})
2008
+ get_api_charts_by_chart_id_reports_summary_by_category_key_json_with_http_info(chart_id, opts)
2009
+ nil
2010
+ end
2011
+
2012
+ # Chart summary by category key
2013
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2014
+ # @param chart_id [String]
2015
+ # @param [Hash] opts the optional parameters
2016
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2017
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2018
+ def get_api_charts_by_chart_id_reports_summary_by_category_key_json_with_http_info(chart_id, opts = {})
2019
+ if @api_client.config.debugging
2020
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_json ...'
2021
+ end
2022
+ # verify the required parameter 'chart_id' is set
2023
+ if @api_client.config.client_side_validation && chart_id.nil?
2024
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_json"
2025
+ end
2026
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2027
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2028
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_json, must conform to the pattern #{pattern}."
2029
+ end
2030
+
2031
+ allowable_values = ["published", "draft"]
2032
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2033
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2034
+ end
2035
+ # resource path
2036
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-category-key.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2037
+
2038
+ # query parameters
2039
+ query_params = opts[:query_params] || {}
2040
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2041
+
2042
+ # header parameters
2043
+ header_params = opts[:header_params] || {}
2044
+
2045
+ # form parameters
2046
+ form_params = opts[:form_params] || {}
2047
+
2048
+ # http body (model)
2049
+ post_body = opts[:debug_body]
2050
+
2051
+ # return_type
2052
+ return_type = opts[:debug_return_type]
2053
+
2054
+ # auth_names
2055
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2056
+
2057
+ new_options = opts.merge(
2058
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_key_json",
2059
+ :header_params => header_params,
2060
+ :query_params => query_params,
2061
+ :form_params => form_params,
2062
+ :body => post_body,
2063
+ :auth_names => auth_names,
2064
+ :return_type => return_type
2065
+ )
2066
+
2067
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2068
+ if @api_client.config.debugging
2069
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_category_key_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2070
+ end
2071
+ return data, status_code, headers
2072
+ end
2073
+
2074
+ # Chart summary by category label (CSV)
2075
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2076
+ # @param chart_id [String]
2077
+ # @param [Hash] opts the optional parameters
2078
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2079
+ # @return [nil]
2080
+ def get_api_charts_by_chart_id_reports_summary_by_category_label_csv(chart_id, opts = {})
2081
+ get_api_charts_by_chart_id_reports_summary_by_category_label_csv_with_http_info(chart_id, opts)
2082
+ nil
2083
+ end
2084
+
2085
+ # Chart summary by category label (CSV)
2086
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2087
+ # @param chart_id [String]
2088
+ # @param [Hash] opts the optional parameters
2089
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2090
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2091
+ def get_api_charts_by_chart_id_reports_summary_by_category_label_csv_with_http_info(chart_id, opts = {})
2092
+ if @api_client.config.debugging
2093
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_csv ...'
2094
+ end
2095
+ # verify the required parameter 'chart_id' is set
2096
+ if @api_client.config.client_side_validation && chart_id.nil?
2097
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_csv"
2098
+ end
2099
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2100
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2101
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_csv, must conform to the pattern #{pattern}."
2102
+ end
2103
+
2104
+ allowable_values = ["published", "draft"]
2105
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2106
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2107
+ end
2108
+ # resource path
2109
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-category-label.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2110
+
2111
+ # query parameters
2112
+ query_params = opts[:query_params] || {}
2113
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2114
+
2115
+ # header parameters
2116
+ header_params = opts[:header_params] || {}
2117
+
2118
+ # form parameters
2119
+ form_params = opts[:form_params] || {}
2120
+
2121
+ # http body (model)
2122
+ post_body = opts[:debug_body]
2123
+
2124
+ # return_type
2125
+ return_type = opts[:debug_return_type]
2126
+
2127
+ # auth_names
2128
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2129
+
2130
+ new_options = opts.merge(
2131
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_csv",
2132
+ :header_params => header_params,
2133
+ :query_params => query_params,
2134
+ :form_params => form_params,
2135
+ :body => post_body,
2136
+ :auth_names => auth_names,
2137
+ :return_type => return_type
2138
+ )
2139
+
2140
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2141
+ if @api_client.config.debugging
2142
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_category_label_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2143
+ end
2144
+ return data, status_code, headers
2145
+ end
2146
+
2147
+ # Chart summary by category label
2148
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2149
+ # @param chart_id [String]
2150
+ # @param [Hash] opts the optional parameters
2151
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2152
+ # @return [nil]
2153
+ def get_api_charts_by_chart_id_reports_summary_by_category_label_json(chart_id, opts = {})
2154
+ get_api_charts_by_chart_id_reports_summary_by_category_label_json_with_http_info(chart_id, opts)
2155
+ nil
2156
+ end
2157
+
2158
+ # Chart summary by category label
2159
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2160
+ # @param chart_id [String]
2161
+ # @param [Hash] opts the optional parameters
2162
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2163
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2164
+ def get_api_charts_by_chart_id_reports_summary_by_category_label_json_with_http_info(chart_id, opts = {})
2165
+ if @api_client.config.debugging
2166
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_json ...'
2167
+ end
2168
+ # verify the required parameter 'chart_id' is set
2169
+ if @api_client.config.client_side_validation && chart_id.nil?
2170
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_json"
2171
+ end
2172
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2173
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2174
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_json, must conform to the pattern #{pattern}."
2175
+ end
2176
+
2177
+ allowable_values = ["published", "draft"]
2178
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2179
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2180
+ end
2181
+ # resource path
2182
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-category-label.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2183
+
2184
+ # query parameters
2185
+ query_params = opts[:query_params] || {}
2186
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2187
+
2188
+ # header parameters
2189
+ header_params = opts[:header_params] || {}
2190
+
2191
+ # form parameters
2192
+ form_params = opts[:form_params] || {}
2193
+
2194
+ # http body (model)
2195
+ post_body = opts[:debug_body]
2196
+
2197
+ # return_type
2198
+ return_type = opts[:debug_return_type]
2199
+
2200
+ # auth_names
2201
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2202
+
2203
+ new_options = opts.merge(
2204
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_category_label_json",
2205
+ :header_params => header_params,
2206
+ :query_params => query_params,
2207
+ :form_params => form_params,
2208
+ :body => post_body,
2209
+ :auth_names => auth_names,
2210
+ :return_type => return_type
2211
+ )
2212
+
2213
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2214
+ if @api_client.config.debugging
2215
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_category_label_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2216
+ end
2217
+ return data, status_code, headers
2218
+ end
2219
+
2220
+ # Chart summary by object type (CSV)
2221
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2222
+ # @param chart_id [String]
2223
+ # @param [Hash] opts the optional parameters
2224
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2225
+ # @return [nil]
2226
+ def get_api_charts_by_chart_id_reports_summary_by_object_type_csv(chart_id, opts = {})
2227
+ get_api_charts_by_chart_id_reports_summary_by_object_type_csv_with_http_info(chart_id, opts)
2228
+ nil
2229
+ end
2230
+
2231
+ # Chart summary by object type (CSV)
2232
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2233
+ # @param chart_id [String]
2234
+ # @param [Hash] opts the optional parameters
2235
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2236
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2237
+ def get_api_charts_by_chart_id_reports_summary_by_object_type_csv_with_http_info(chart_id, opts = {})
2238
+ if @api_client.config.debugging
2239
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_csv ...'
2240
+ end
2241
+ # verify the required parameter 'chart_id' is set
2242
+ if @api_client.config.client_side_validation && chart_id.nil?
2243
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_csv"
2244
+ end
2245
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2246
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2247
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_csv, must conform to the pattern #{pattern}."
2248
+ end
2249
+
2250
+ allowable_values = ["published", "draft"]
2251
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2252
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2253
+ end
2254
+ # resource path
2255
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-object-type.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2256
+
2257
+ # query parameters
2258
+ query_params = opts[:query_params] || {}
2259
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2260
+
2261
+ # header parameters
2262
+ header_params = opts[:header_params] || {}
2263
+
2264
+ # form parameters
2265
+ form_params = opts[:form_params] || {}
2266
+
2267
+ # http body (model)
2268
+ post_body = opts[:debug_body]
2269
+
2270
+ # return_type
2271
+ return_type = opts[:debug_return_type]
2272
+
2273
+ # auth_names
2274
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2275
+
2276
+ new_options = opts.merge(
2277
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_csv",
2278
+ :header_params => header_params,
2279
+ :query_params => query_params,
2280
+ :form_params => form_params,
2281
+ :body => post_body,
2282
+ :auth_names => auth_names,
2283
+ :return_type => return_type
2284
+ )
2285
+
2286
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2287
+ if @api_client.config.debugging
2288
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_object_type_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2289
+ end
2290
+ return data, status_code, headers
2291
+ end
2292
+
2293
+ # Chart summary by object type
2294
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2295
+ # @param chart_id [String]
2296
+ # @param [Hash] opts the optional parameters
2297
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2298
+ # @return [nil]
2299
+ def get_api_charts_by_chart_id_reports_summary_by_object_type_json(chart_id, opts = {})
2300
+ get_api_charts_by_chart_id_reports_summary_by_object_type_json_with_http_info(chart_id, opts)
2301
+ nil
2302
+ end
2303
+
2304
+ # Chart summary by object type
2305
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2306
+ # @param chart_id [String]
2307
+ # @param [Hash] opts the optional parameters
2308
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2309
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2310
+ def get_api_charts_by_chart_id_reports_summary_by_object_type_json_with_http_info(chart_id, opts = {})
2311
+ if @api_client.config.debugging
2312
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_json ...'
2313
+ end
2314
+ # verify the required parameter 'chart_id' is set
2315
+ if @api_client.config.client_side_validation && chart_id.nil?
2316
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_json"
2317
+ end
2318
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2319
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2320
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_json, must conform to the pattern #{pattern}."
2321
+ end
2322
+
2323
+ allowable_values = ["published", "draft"]
2324
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2325
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2326
+ end
2327
+ # resource path
2328
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-object-type.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2329
+
2330
+ # query parameters
2331
+ query_params = opts[:query_params] || {}
2332
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2333
+
2334
+ # header parameters
2335
+ header_params = opts[:header_params] || {}
2336
+
2337
+ # form parameters
2338
+ form_params = opts[:form_params] || {}
2339
+
2340
+ # http body (model)
2341
+ post_body = opts[:debug_body]
2342
+
2343
+ # return_type
2344
+ return_type = opts[:debug_return_type]
2345
+
2346
+ # auth_names
2347
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2348
+
2349
+ new_options = opts.merge(
2350
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_object_type_json",
2351
+ :header_params => header_params,
2352
+ :query_params => query_params,
2353
+ :form_params => form_params,
2354
+ :body => post_body,
2355
+ :auth_names => auth_names,
2356
+ :return_type => return_type
2357
+ )
2358
+
2359
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2360
+ if @api_client.config.debugging
2361
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_object_type_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2362
+ end
2363
+ return data, status_code, headers
2364
+ end
2365
+
2366
+ # Chart summary by section (CSV)
2367
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2368
+ # @param chart_id [String]
2369
+ # @param [Hash] opts the optional parameters
2370
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2371
+ # @return [nil]
2372
+ def get_api_charts_by_chart_id_reports_summary_by_section_csv(chart_id, opts = {})
2373
+ get_api_charts_by_chart_id_reports_summary_by_section_csv_with_http_info(chart_id, opts)
2374
+ nil
2375
+ end
2376
+
2377
+ # Chart summary by section (CSV)
2378
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2379
+ # @param chart_id [String]
2380
+ # @param [Hash] opts the optional parameters
2381
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2382
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2383
+ def get_api_charts_by_chart_id_reports_summary_by_section_csv_with_http_info(chart_id, opts = {})
2384
+ if @api_client.config.debugging
2385
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_csv ...'
2386
+ end
2387
+ # verify the required parameter 'chart_id' is set
2388
+ if @api_client.config.client_side_validation && chart_id.nil?
2389
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_csv"
2390
+ end
2391
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2392
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2393
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_csv, must conform to the pattern #{pattern}."
2394
+ end
2395
+
2396
+ allowable_values = ["published", "draft"]
2397
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2398
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2399
+ end
2400
+ # resource path
2401
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-section.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2402
+
2403
+ # query parameters
2404
+ query_params = opts[:query_params] || {}
2405
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2406
+
2407
+ # header parameters
2408
+ header_params = opts[:header_params] || {}
2409
+
2410
+ # form parameters
2411
+ form_params = opts[:form_params] || {}
2412
+
2413
+ # http body (model)
2414
+ post_body = opts[:debug_body]
2415
+
2416
+ # return_type
2417
+ return_type = opts[:debug_return_type]
2418
+
2419
+ # auth_names
2420
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2421
+
2422
+ new_options = opts.merge(
2423
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_csv",
2424
+ :header_params => header_params,
2425
+ :query_params => query_params,
2426
+ :form_params => form_params,
2427
+ :body => post_body,
2428
+ :auth_names => auth_names,
2429
+ :return_type => return_type
2430
+ )
2431
+
2432
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2433
+ if @api_client.config.debugging
2434
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_section_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2435
+ end
2436
+ return data, status_code, headers
2437
+ end
2438
+
2439
+ # Chart summary by section
2440
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2441
+ # @param chart_id [String]
2442
+ # @param [Hash] opts the optional parameters
2443
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2444
+ # @return [nil]
2445
+ def get_api_charts_by_chart_id_reports_summary_by_section_json(chart_id, opts = {})
2446
+ get_api_charts_by_chart_id_reports_summary_by_section_json_with_http_info(chart_id, opts)
2447
+ nil
2448
+ end
2449
+
2450
+ # Chart summary by section
2451
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2452
+ # @param chart_id [String]
2453
+ # @param [Hash] opts the optional parameters
2454
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2455
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2456
+ def get_api_charts_by_chart_id_reports_summary_by_section_json_with_http_info(chart_id, opts = {})
2457
+ if @api_client.config.debugging
2458
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_json ...'
2459
+ end
2460
+ # verify the required parameter 'chart_id' is set
2461
+ if @api_client.config.client_side_validation && chart_id.nil?
2462
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_json"
2463
+ end
2464
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2465
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2466
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_json, must conform to the pattern #{pattern}."
2467
+ end
2468
+
2469
+ allowable_values = ["published", "draft"]
2470
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2471
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2472
+ end
2473
+ # resource path
2474
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-section.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2475
+
2476
+ # query parameters
2477
+ query_params = opts[:query_params] || {}
2478
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2479
+
2480
+ # header parameters
2481
+ header_params = opts[:header_params] || {}
2482
+
2483
+ # form parameters
2484
+ form_params = opts[:form_params] || {}
2485
+
2486
+ # http body (model)
2487
+ post_body = opts[:debug_body]
2488
+
2489
+ # return_type
2490
+ return_type = opts[:debug_return_type]
2491
+
2492
+ # auth_names
2493
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2494
+
2495
+ new_options = opts.merge(
2496
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_section_json",
2497
+ :header_params => header_params,
2498
+ :query_params => query_params,
2499
+ :form_params => form_params,
2500
+ :body => post_body,
2501
+ :auth_names => auth_names,
2502
+ :return_type => return_type
2503
+ )
2504
+
2505
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2506
+ if @api_client.config.debugging
2507
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_section_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2508
+ end
2509
+ return data, status_code, headers
2510
+ end
2511
+
2512
+ # Chart summary by zone (CSV)
2513
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2514
+ # @param chart_id [String]
2515
+ # @param [Hash] opts the optional parameters
2516
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2517
+ # @return [nil]
2518
+ def get_api_charts_by_chart_id_reports_summary_by_zone_csv(chart_id, opts = {})
2519
+ get_api_charts_by_chart_id_reports_summary_by_zone_csv_with_http_info(chart_id, opts)
2520
+ nil
2521
+ end
2522
+
2523
+ # Chart summary by zone (CSV)
2524
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2525
+ # @param chart_id [String]
2526
+ # @param [Hash] opts the optional parameters
2527
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2528
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2529
+ def get_api_charts_by_chart_id_reports_summary_by_zone_csv_with_http_info(chart_id, opts = {})
2530
+ if @api_client.config.debugging
2531
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_csv ...'
2532
+ end
2533
+ # verify the required parameter 'chart_id' is set
2534
+ if @api_client.config.client_side_validation && chart_id.nil?
2535
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_csv"
2536
+ end
2537
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2538
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2539
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_csv, must conform to the pattern #{pattern}."
2540
+ end
2541
+
2542
+ allowable_values = ["published", "draft"]
2543
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2544
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2545
+ end
2546
+ # resource path
2547
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-zone.csv'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2548
+
2549
+ # query parameters
2550
+ query_params = opts[:query_params] || {}
2551
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2552
+
2553
+ # header parameters
2554
+ header_params = opts[:header_params] || {}
2555
+
2556
+ # form parameters
2557
+ form_params = opts[:form_params] || {}
2558
+
2559
+ # http body (model)
2560
+ post_body = opts[:debug_body]
2561
+
2562
+ # return_type
2563
+ return_type = opts[:debug_return_type]
2564
+
2565
+ # auth_names
2566
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2567
+
2568
+ new_options = opts.merge(
2569
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_csv",
2570
+ :header_params => header_params,
2571
+ :query_params => query_params,
2572
+ :form_params => form_params,
2573
+ :body => post_body,
2574
+ :auth_names => auth_names,
2575
+ :return_type => return_type
2576
+ )
2577
+
2578
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2579
+ if @api_client.config.debugging
2580
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_zone_csv\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2581
+ end
2582
+ return data, status_code, headers
2583
+ end
2584
+
2585
+ # Chart summary by zone
2586
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: `objectId`, `label`, `objectType`, `category`, `section`, `zone`, `capacity` (1 per seat, places per GA area), `price` (catalog cents; null for GA), `categoryKey` (chart category id of `category`; the value itself when no category defines it). `published` is false when the chart has never been published (no rows). `?version=draft` reports the unpublished designer draft instead (404 `draft_not_found` when the chart has none): it reads only the draft row, never the published geometry or its caches; `version` echoes the reported version. Buckets: `count` (places), `objects`, `seats`, `gaPlaces`, `byCategory`, `bySection`, `byZone`, `byObjectType`; `totals` sums every bucket. The `.csv` variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2587
+ # @param chart_id [String]
2588
+ # @param [Hash] opts the optional parameters
2589
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2590
+ # @return [nil]
2591
+ def get_api_charts_by_chart_id_reports_summary_by_zone_json(chart_id, opts = {})
2592
+ get_api_charts_by_chart_id_reports_summary_by_zone_json_with_http_info(chart_id, opts)
2593
+ nil
2594
+ end
2595
+
2596
+ # Chart summary by zone
2597
+ # Reads the published chart (seat and GA templates plus the published chart layout) — no event, no live state. Rows: &#x60;objectId&#x60;, &#x60;label&#x60;, &#x60;objectType&#x60;, &#x60;category&#x60;, &#x60;section&#x60;, &#x60;zone&#x60;, &#x60;capacity&#x60; (1 per seat, places per GA area), &#x60;price&#x60; (catalog cents; null for GA), &#x60;categoryKey&#x60; (chart category id of &#x60;category&#x60;; the value itself when no category defines it). &#x60;published&#x60; is false when the chart has never been published (no rows). &#x60;?version&#x3D;draft&#x60; reports the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when the chart has none): it reads only the draft row, never the published geometry or its caches; &#x60;version&#x60; echoes the reported version. Buckets: &#x60;count&#x60; (places), &#x60;objects&#x60;, &#x60;seats&#x60;, &#x60;gaPlaces&#x60;, &#x60;byCategory&#x60;, &#x60;bySection&#x60;, &#x60;byZone&#x60;, &#x60;byObjectType&#x60;; &#x60;totals&#x60; sums every bucket. The &#x60;.csv&#x60; variant returns the same data as RFC 4180 CSV (one line per object, or per group for summaries). Requires content_write (or a partner API key with the reports scope).
2598
+ # @param chart_id [String]
2599
+ # @param [Hash] opts the optional parameters
2600
+ # @option opts [String] :version &#x60;published&#x60; (default) or &#x60;draft&#x60; (the unpublished designer draft).
2601
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2602
+ def get_api_charts_by_chart_id_reports_summary_by_zone_json_with_http_info(chart_id, opts = {})
2603
+ if @api_client.config.debugging
2604
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_json ...'
2605
+ end
2606
+ # verify the required parameter 'chart_id' is set
2607
+ if @api_client.config.client_side_validation && chart_id.nil?
2608
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_json"
2609
+ end
2610
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2611
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2612
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_json, must conform to the pattern #{pattern}."
2613
+ end
2614
+
2615
+ allowable_values = ["published", "draft"]
2616
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2617
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2618
+ end
2619
+ # resource path
2620
+ local_var_path = '/api/charts/{chartId}/reports/summary/by-zone.json'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2621
+
2622
+ # query parameters
2623
+ query_params = opts[:query_params] || {}
2624
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2625
+
2626
+ # header parameters
2627
+ header_params = opts[:header_params] || {}
2628
+
2629
+ # form parameters
2630
+ form_params = opts[:form_params] || {}
2631
+
2632
+ # http body (model)
2633
+ post_body = opts[:debug_body]
2634
+
2635
+ # return_type
2636
+ return_type = opts[:debug_return_type]
2637
+
2638
+ # auth_names
2639
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2640
+
2641
+ new_options = opts.merge(
2642
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_reports_summary_by_zone_json",
2643
+ :header_params => header_params,
2644
+ :query_params => query_params,
2645
+ :form_params => form_params,
2646
+ :body => post_body,
2647
+ :auth_names => auth_names,
2648
+ :return_type => return_type
2649
+ )
2650
+
2651
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2652
+ if @api_client.config.debugging
2653
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_reports_summary_by_zone_json\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2654
+ end
2655
+ return data, status_code, headers
2656
+ end
2657
+
2658
+ # Chart thumbnail
2659
+ # Preview image of a published version: the WebP/PNG the designer rendered at publish time, or a server-side placeholder (PNG: zone / section / GA outlines, decorative shapes and category-coloured seat dots; first floor of multi-floor maps) until a render is attached. `X-Thumbnail-Source` says which. With `?version=N` a designer thumbnail is served `Cache-Control: private, max-age=31536000, immutable`; placeholders are cached for 5 minutes. Without `version` the latest published state is returned with `no-cache` and an `ETag` (send `If-None-Match` for `304`). 404 when the chart was never published.
2660
+ # @param chart_id [String]
2661
+ # @param [Hash] opts the optional parameters
2662
+ # @option opts [Float] :version Version number (1-based).
2663
+ # @return [nil]
2664
+ def get_api_charts_by_chart_id_thumbnail(chart_id, opts = {})
2665
+ get_api_charts_by_chart_id_thumbnail_with_http_info(chart_id, opts)
2666
+ nil
2667
+ end
2668
+
2669
+ # Chart thumbnail
2670
+ # Preview image of a published version: the WebP/PNG the designer rendered at publish time, or a server-side placeholder (PNG: zone / section / GA outlines, decorative shapes and category-coloured seat dots; first floor of multi-floor maps) until a render is attached. &#x60;X-Thumbnail-Source&#x60; says which. With &#x60;?version&#x3D;N&#x60; a designer thumbnail is served &#x60;Cache-Control: private, max-age&#x3D;31536000, immutable&#x60;; placeholders are cached for 5 minutes. Without &#x60;version&#x60; the latest published state is returned with &#x60;no-cache&#x60; and an &#x60;ETag&#x60; (send &#x60;If-None-Match&#x60; for &#x60;304&#x60;). 404 when the chart was never published.
2671
+ # @param chart_id [String]
2672
+ # @param [Hash] opts the optional parameters
2673
+ # @option opts [Float] :version Version number (1-based).
2674
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2675
+ def get_api_charts_by_chart_id_thumbnail_with_http_info(chart_id, opts = {})
2676
+ if @api_client.config.debugging
2677
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_thumbnail ...'
2678
+ end
2679
+ # verify the required parameter 'chart_id' is set
2680
+ if @api_client.config.client_side_validation && chart_id.nil?
2681
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_thumbnail"
2682
+ end
2683
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2684
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2685
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_thumbnail, must conform to the pattern #{pattern}."
2686
+ end
2687
+
2688
+ if @api_client.config.client_side_validation && !opts[:'version'].nil? && opts[:'version'] > 2147483647
2689
+ fail ArgumentError, 'invalid value for "opts[:"version"]" when calling ChartsApi.get_api_charts_by_chart_id_thumbnail, must be smaller than or equal to 2147483647.'
2690
+ end
2691
+
2692
+ if @api_client.config.client_side_validation && !opts[:'version'].nil? && opts[:'version'] < 1
2693
+ fail ArgumentError, 'invalid value for "opts[:"version"]" when calling ChartsApi.get_api_charts_by_chart_id_thumbnail, must be greater than or equal to 1.'
2694
+ end
2695
+
2696
+ # resource path
2697
+ local_var_path = '/api/charts/{chartId}/thumbnail'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2698
+
2699
+ # query parameters
2700
+ query_params = opts[:query_params] || {}
2701
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2702
+
2703
+ # header parameters
2704
+ header_params = opts[:header_params] || {}
2705
+
2706
+ # form parameters
2707
+ form_params = opts[:form_params] || {}
2708
+
2709
+ # http body (model)
2710
+ post_body = opts[:debug_body]
2711
+
2712
+ # return_type
2713
+ return_type = opts[:debug_return_type]
2714
+
2715
+ # auth_names
2716
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2717
+
2718
+ new_options = opts.merge(
2719
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_thumbnail",
2720
+ :header_params => header_params,
2721
+ :query_params => query_params,
2722
+ :form_params => form_params,
2723
+ :body => post_body,
2724
+ :auth_names => auth_names,
2725
+ :return_type => return_type
2726
+ )
2727
+
2728
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2729
+ if @api_client.config.debugging
2730
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_thumbnail\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2731
+ end
2732
+ return data, status_code, headers
2733
+ end
2734
+
2735
+ # List published versions
2736
+ # Immutable publish history, newest first, cursor-paginated (`limit` 1..100, default 20; pass `nextCursor` back as `cursor`). Every successful `POST /api/charts/:chartId/map/publish` appends one version. Snapshots are content-addressed: republishing or restoring identical content reuses the stored geometry (same `geometryHash`) instead of duplicating it. Charts published before history existed get a `baseline` version 1 on their next publish.
2737
+ # @param chart_id [String]
2738
+ # @param [Hash] opts the optional parameters
2739
+ # @option opts [Float] :limit Page size (1..100, default 20).
2740
+ # @option opts [String] :cursor Opaque &#x60;nextCursor&#x60; value from the previous page.
2741
+ # @return [GetApiChartsByChartIdVersions200Response]
2742
+ def get_api_charts_by_chart_id_versions(chart_id, opts = {})
2743
+ data, _status_code, _headers = get_api_charts_by_chart_id_versions_with_http_info(chart_id, opts)
2744
+ data
2745
+ end
2746
+
2747
+ # List published versions
2748
+ # Immutable publish history, newest first, cursor-paginated (&#x60;limit&#x60; 1..100, default 20; pass &#x60;nextCursor&#x60; back as &#x60;cursor&#x60;). Every successful &#x60;POST /api/charts/:chartId/map/publish&#x60; appends one version. Snapshots are content-addressed: republishing or restoring identical content reuses the stored geometry (same &#x60;geometryHash&#x60;) instead of duplicating it. Charts published before history existed get a &#x60;baseline&#x60; version 1 on their next publish.
2749
+ # @param chart_id [String]
2750
+ # @param [Hash] opts the optional parameters
2751
+ # @option opts [Float] :limit Page size (1..100, default 20).
2752
+ # @option opts [String] :cursor Opaque &#x60;nextCursor&#x60; value from the previous page.
2753
+ # @return [Array<(GetApiChartsByChartIdVersions200Response, Integer, Hash)>] GetApiChartsByChartIdVersions200Response data, response status code and response headers
2754
+ def get_api_charts_by_chart_id_versions_with_http_info(chart_id, opts = {})
2755
+ if @api_client.config.debugging
2756
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_versions ...'
2757
+ end
2758
+ # verify the required parameter 'chart_id' is set
2759
+ if @api_client.config.client_side_validation && chart_id.nil?
2760
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_versions"
2761
+ end
2762
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2763
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2764
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_versions, must conform to the pattern #{pattern}."
2765
+ end
2766
+
2767
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
2768
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ChartsApi.get_api_charts_by_chart_id_versions, must be smaller than or equal to 100.'
2769
+ end
2770
+
2771
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
2772
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling ChartsApi.get_api_charts_by_chart_id_versions, must be greater than or equal to 1.'
2773
+ end
2774
+
2775
+ if @api_client.config.client_side_validation && !opts[:'cursor'].nil? && opts[:'cursor'].to_s.length > 512
2776
+ fail ArgumentError, 'invalid value for "opts[:"cursor"]" when calling ChartsApi.get_api_charts_by_chart_id_versions, the character length must be smaller than or equal to 512.'
2777
+ end
2778
+
2779
+ if @api_client.config.client_side_validation && !opts[:'cursor'].nil? && opts[:'cursor'].to_s.length < 1
2780
+ fail ArgumentError, 'invalid value for "opts[:"cursor"]" when calling ChartsApi.get_api_charts_by_chart_id_versions, the character length must be great than or equal to 1.'
2781
+ end
2782
+
2783
+ pattern = Regexp.new(/^[A-Za-z0-9_-]+$/)
2784
+ if @api_client.config.client_side_validation && !opts[:'cursor'].nil? && opts[:'cursor'] !~ pattern
2785
+ fail ArgumentError, "invalid value for 'opts[:\"cursor\"]' when calling ChartsApi.get_api_charts_by_chart_id_versions, must conform to the pattern #{pattern}."
2786
+ end
2787
+
2788
+ # resource path
2789
+ local_var_path = '/api/charts/{chartId}/versions'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2790
+
2791
+ # query parameters
2792
+ query_params = opts[:query_params] || {}
2793
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
2794
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
2795
+
2796
+ # header parameters
2797
+ header_params = opts[:header_params] || {}
2798
+ # HTTP header 'Accept' (if needed)
2799
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'multipart/form-data', 'text/plain']) unless header_params['Accept']
2800
+
2801
+ # form parameters
2802
+ form_params = opts[:form_params] || {}
2803
+
2804
+ # http body (model)
2805
+ post_body = opts[:debug_body]
2806
+
2807
+ # return_type
2808
+ return_type = opts[:debug_return_type] || 'GetApiChartsByChartIdVersions200Response'
2809
+
2810
+ # auth_names
2811
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2812
+
2813
+ new_options = opts.merge(
2814
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_versions",
2815
+ :header_params => header_params,
2816
+ :query_params => query_params,
2817
+ :form_params => form_params,
2818
+ :body => post_body,
2819
+ :auth_names => auth_names,
2820
+ :return_type => return_type
2821
+ )
2822
+
2823
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2824
+ if @api_client.config.debugging
2825
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_versions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2826
+ end
2827
+ return data, status_code, headers
2828
+ end
2829
+
2830
+ # List the zones of a chart
2831
+ # Zones (named areas above sections) of the **published** chart by default, in drawing order: `{ id, name, color, floorId, focalPoint, bounds, points }`. `focalPoint` is the zone's Best Available ranking origin (null: the chart focal point applies). `?version=draft` reads the unpublished designer draft instead (404 `draft_not_found` when there is none), so the published chart stays readable while a draft exists. Only the zone shapes are read (projected in PostgreSQL). Object counts per zone: `GET /charts/{chartId}/reports/by-zone.json`. Requires read access.
2832
+ # @param chart_id [String] Chart id (UUID) or chart key.
2833
+ # @param [Hash] opts the optional parameters
2834
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60; (the unpublished designer draft).
2835
+ # @return [nil]
2836
+ def get_api_charts_by_chart_id_zones(chart_id, opts = {})
2837
+ get_api_charts_by_chart_id_zones_with_http_info(chart_id, opts)
2838
+ nil
2839
+ end
2840
+
2841
+ # List the zones of a chart
2842
+ # Zones (named areas above sections) of the **published** chart by default, in drawing order: &#x60;{ id, name, color, floorId, focalPoint, bounds, points }&#x60;. &#x60;focalPoint&#x60; is the zone&#39;s Best Available ranking origin (null: the chart focal point applies). &#x60;?version&#x3D;draft&#x60; reads the unpublished designer draft instead (404 &#x60;draft_not_found&#x60; when there is none), so the published chart stays readable while a draft exists. Only the zone shapes are read (projected in PostgreSQL). Object counts per zone: &#x60;GET /charts/{chartId}/reports/by-zone.json&#x60;. Requires read access.
2843
+ # @param chart_id [String] Chart id (UUID) or chart key.
2844
+ # @param [Hash] opts the optional parameters
2845
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60; (the unpublished designer draft).
2846
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2847
+ def get_api_charts_by_chart_id_zones_with_http_info(chart_id, opts = {})
2848
+ if @api_client.config.debugging
2849
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_by_chart_id_zones ...'
2850
+ end
2851
+ # verify the required parameter 'chart_id' is set
2852
+ if @api_client.config.client_side_validation && chart_id.nil?
2853
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_zones"
2854
+ end
2855
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
2856
+ if @api_client.config.client_side_validation && chart_id !~ pattern
2857
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.get_api_charts_by_chart_id_zones, must conform to the pattern #{pattern}."
2858
+ end
2859
+
2860
+ allowable_values = ["published", "draft"]
2861
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
2862
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
2863
+ end
2864
+ # resource path
2865
+ local_var_path = '/api/charts/{chartId}/zones'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
2866
+
2867
+ # query parameters
2868
+ query_params = opts[:query_params] || {}
2869
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
2870
+
2871
+ # header parameters
2872
+ header_params = opts[:header_params] || {}
2873
+
2874
+ # form parameters
2875
+ form_params = opts[:form_params] || {}
2876
+
2877
+ # http body (model)
2878
+ post_body = opts[:debug_body]
2879
+
2880
+ # return_type
2881
+ return_type = opts[:debug_return_type]
2882
+
2883
+ # auth_names
2884
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2885
+
2886
+ new_options = opts.merge(
2887
+ :operation => :"ChartsApi.get_api_charts_by_chart_id_zones",
2888
+ :header_params => header_params,
2889
+ :query_params => query_params,
2890
+ :form_params => form_params,
2891
+ :body => post_body,
2892
+ :auth_names => auth_names,
2893
+ :return_type => return_type
2894
+ )
2895
+
2896
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2897
+ if @api_client.config.debugging
2898
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_by_chart_id_zones\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2899
+ end
2900
+ return data, status_code, headers
2901
+ end
2902
+
2903
+ # List chart tags
2904
+ # Every tag used by the tenant's charts with the number of charts carrying it, sorted case-insensitively (at most 500). Tags are case-insensitive: `VIP` and `vip` are the same tag; the returned spelling is the lexicographically smallest stored variant. Counts respect the `archived` filter (archived charts are excluded by default).
2905
+ # @param [Hash] opts the optional parameters
2906
+ # @option opts [String] :archived &#x60;false&#x60; (default) hides archived charts, &#x60;true&#x60; returns only archived charts, &#x60;all&#x60; returns both.
2907
+ # @return [nil]
2908
+ def get_api_charts_tags(opts = {})
2909
+ get_api_charts_tags_with_http_info(opts)
2910
+ nil
2911
+ end
2912
+
2913
+ # List chart tags
2914
+ # Every tag used by the tenant&#39;s charts with the number of charts carrying it, sorted case-insensitively (at most 500). Tags are case-insensitive: &#x60;VIP&#x60; and &#x60;vip&#x60; are the same tag; the returned spelling is the lexicographically smallest stored variant. Counts respect the &#x60;archived&#x60; filter (archived charts are excluded by default).
2915
+ # @param [Hash] opts the optional parameters
2916
+ # @option opts [String] :archived &#x60;false&#x60; (default) hides archived charts, &#x60;true&#x60; returns only archived charts, &#x60;all&#x60; returns both.
2917
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2918
+ def get_api_charts_tags_with_http_info(opts = {})
2919
+ if @api_client.config.debugging
2920
+ @api_client.config.logger.debug 'Calling API: ChartsApi.get_api_charts_tags ...'
2921
+ end
2922
+ allowable_values = ["false", "true", "all"]
2923
+ if @api_client.config.client_side_validation && opts[:'archived'] && !allowable_values.include?(opts[:'archived'])
2924
+ fail ArgumentError, "invalid value for \"archived\", must be one of #{allowable_values}"
2925
+ end
2926
+ # resource path
2927
+ local_var_path = '/api/charts/tags'
2928
+
2929
+ # query parameters
2930
+ query_params = opts[:query_params] || {}
2931
+ query_params[:'archived'] = opts[:'archived'] if !opts[:'archived'].nil?
2932
+
2933
+ # header parameters
2934
+ header_params = opts[:header_params] || {}
2935
+
2936
+ # form parameters
2937
+ form_params = opts[:form_params] || {}
2938
+
2939
+ # http body (model)
2940
+ post_body = opts[:debug_body]
2941
+
2942
+ # return_type
2943
+ return_type = opts[:debug_return_type]
2944
+
2945
+ # auth_names
2946
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
2947
+
2948
+ new_options = opts.merge(
2949
+ :operation => :"ChartsApi.get_api_charts_tags",
2950
+ :header_params => header_params,
2951
+ :query_params => query_params,
2952
+ :form_params => form_params,
2953
+ :body => post_body,
2954
+ :auth_names => auth_names,
2955
+ :return_type => return_type
2956
+ )
2957
+
2958
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
2959
+ if @api_client.config.debugging
2960
+ @api_client.config.logger.debug "API called: ChartsApi#get_api_charts_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2961
+ end
2962
+ return data, status_code, headers
2963
+ end
2964
+
2965
+ # Update chart name or key
2966
+ # Updates the display name and/or the partner `key` of a reusable seating chart (at least one of them). Keys are unique per workspace, URL-safe and never UUID-shaped; after a rename the old key stops resolving (every API instance within 5 s).
2967
+ # @param chart_id [String] Chart id (UUID) or chart key.
2968
+ # @param patch_api_charts_by_chart_id_request [PatchApiChartsByChartIdRequest]
2969
+ # @param [Hash] opts the optional parameters
2970
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
2971
+ # @return [nil]
2972
+ def patch_api_charts_by_chart_id(chart_id, patch_api_charts_by_chart_id_request, opts = {})
2973
+ patch_api_charts_by_chart_id_with_http_info(chart_id, patch_api_charts_by_chart_id_request, opts)
2974
+ nil
2975
+ end
2976
+
2977
+ # Update chart name or key
2978
+ # Updates the display name and/or the partner &#x60;key&#x60; of a reusable seating chart (at least one of them). Keys are unique per workspace, URL-safe and never UUID-shaped; after a rename the old key stops resolving (every API instance within 5 s).
2979
+ # @param chart_id [String] Chart id (UUID) or chart key.
2980
+ # @param patch_api_charts_by_chart_id_request [PatchApiChartsByChartIdRequest]
2981
+ # @param [Hash] opts the optional parameters
2982
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
2983
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
2984
+ def patch_api_charts_by_chart_id_with_http_info(chart_id, patch_api_charts_by_chart_id_request, opts = {})
2985
+ if @api_client.config.debugging
2986
+ @api_client.config.logger.debug 'Calling API: ChartsApi.patch_api_charts_by_chart_id ...'
2987
+ end
2988
+ # verify the required parameter 'chart_id' is set
2989
+ if @api_client.config.client_side_validation && chart_id.nil?
2990
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.patch_api_charts_by_chart_id"
2991
+ end
2992
+ if @api_client.config.client_side_validation && chart_id.to_s.length > 36
2993
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.patch_api_charts_by_chart_id, the character length must be smaller than or equal to 36.'
2994
+ end
2995
+
2996
+ if @api_client.config.client_side_validation && chart_id.to_s.length < 36
2997
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.patch_api_charts_by_chart_id, the character length must be great than or equal to 36.'
2998
+ end
2999
+
3000
+ # verify the required parameter 'patch_api_charts_by_chart_id_request' is set
3001
+ if @api_client.config.client_side_validation && patch_api_charts_by_chart_id_request.nil?
3002
+ fail ArgumentError, "Missing the required parameter 'patch_api_charts_by_chart_id_request' when calling ChartsApi.patch_api_charts_by_chart_id"
3003
+ end
3004
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3005
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.patch_api_charts_by_chart_id, the character length must be smaller than or equal to 255.'
3006
+ end
3007
+
3008
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3009
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.patch_api_charts_by_chart_id, the character length must be great than or equal to 1.'
3010
+ end
3011
+
3012
+ # resource path
3013
+ local_var_path = '/api/charts/{chartId}'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3014
+
3015
+ # query parameters
3016
+ query_params = opts[:query_params] || {}
3017
+
3018
+ # header parameters
3019
+ header_params = opts[:header_params] || {}
3020
+ # HTTP header 'Content-Type'
3021
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3022
+ if !content_type.nil?
3023
+ header_params['Content-Type'] = content_type
3024
+ end
3025
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3026
+
3027
+ # form parameters
3028
+ form_params = opts[:form_params] || {}
3029
+
3030
+ # http body (model)
3031
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(patch_api_charts_by_chart_id_request)
3032
+
3033
+ # return_type
3034
+ return_type = opts[:debug_return_type]
3035
+
3036
+ # auth_names
3037
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3038
+
3039
+ new_options = opts.merge(
3040
+ :operation => :"ChartsApi.patch_api_charts_by_chart_id",
3041
+ :header_params => header_params,
3042
+ :query_params => query_params,
3043
+ :form_params => form_params,
3044
+ :body => post_body,
3045
+ :auth_names => auth_names,
3046
+ :return_type => return_type
3047
+ )
3048
+
3049
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
3050
+ if @api_client.config.debugging
3051
+ @api_client.config.logger.debug "API called: ChartsApi#patch_api_charts_by_chart_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3052
+ end
3053
+ return data, status_code, headers
3054
+ end
3055
+
3056
+ # Create chart
3057
+ # Creates a reusable seating chart. Optional in the same call: `key` (partner key, unique per workspace, usable wherever a chart id is accepted; 409 `chart_key_taken`), `venueType` (`simple` | `sections` | `zones`, the designer template) and `categories` (up to 128 `{ key?, label, color, accessible? }`; keys and labels unique, case-insensitive). With `venueType` or `categories` an initial draft holding them is written in the same transaction (`hasDraft: true`). Author geometry via `PUT /api/charts/:chartId/map/draft` and publish before attaching to events.
3058
+ # @param post_api_charts_request [PostApiChartsRequest]
3059
+ # @param [Hash] opts the optional parameters
3060
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3061
+ # @return [nil]
3062
+ def post_api_charts(post_api_charts_request, opts = {})
3063
+ post_api_charts_with_http_info(post_api_charts_request, opts)
3064
+ nil
3065
+ end
3066
+
3067
+ # Create chart
3068
+ # Creates a reusable seating chart. Optional in the same call: &#x60;key&#x60; (partner key, unique per workspace, usable wherever a chart id is accepted; 409 &#x60;chart_key_taken&#x60;), &#x60;venueType&#x60; (&#x60;simple&#x60; | &#x60;sections&#x60; | &#x60;zones&#x60;, the designer template) and &#x60;categories&#x60; (up to 128 &#x60;{ key?, label, color, accessible? }&#x60;; keys and labels unique, case-insensitive). With &#x60;venueType&#x60; or &#x60;categories&#x60; an initial draft holding them is written in the same transaction (&#x60;hasDraft: true&#x60;). Author geometry via &#x60;PUT /api/charts/:chartId/map/draft&#x60; and publish before attaching to events.
3069
+ # @param post_api_charts_request [PostApiChartsRequest]
3070
+ # @param [Hash] opts the optional parameters
3071
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3072
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3073
+ def post_api_charts_with_http_info(post_api_charts_request, opts = {})
3074
+ if @api_client.config.debugging
3075
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts ...'
3076
+ end
3077
+ # verify the required parameter 'post_api_charts_request' is set
3078
+ if @api_client.config.client_side_validation && post_api_charts_request.nil?
3079
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_request' when calling ChartsApi.post_api_charts"
3080
+ end
3081
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3082
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts, the character length must be smaller than or equal to 255.'
3083
+ end
3084
+
3085
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3086
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts, the character length must be great than or equal to 1.'
3087
+ end
3088
+
3089
+ # resource path
3090
+ local_var_path = '/api/charts'
3091
+
3092
+ # query parameters
3093
+ query_params = opts[:query_params] || {}
3094
+
3095
+ # header parameters
3096
+ header_params = opts[:header_params] || {}
3097
+ # HTTP header 'Content-Type'
3098
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3099
+ if !content_type.nil?
3100
+ header_params['Content-Type'] = content_type
3101
+ end
3102
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3103
+
3104
+ # form parameters
3105
+ form_params = opts[:form_params] || {}
3106
+
3107
+ # http body (model)
3108
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_request)
3109
+
3110
+ # return_type
3111
+ return_type = opts[:debug_return_type]
3112
+
3113
+ # auth_names
3114
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3115
+
3116
+ new_options = opts.merge(
3117
+ :operation => :"ChartsApi.post_api_charts",
3118
+ :header_params => header_params,
3119
+ :query_params => query_params,
3120
+ :form_params => form_params,
3121
+ :body => post_body,
3122
+ :auth_names => auth_names,
3123
+ :return_type => return_type
3124
+ )
3125
+
3126
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3127
+ if @api_client.config.debugging
3128
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3129
+ end
3130
+ return data, status_code, headers
3131
+ end
3132
+
3133
+ # Archive chart
3134
+ # Soft-deletes a chart: it is hidden from `GET /api/charts` and `GET /api/charts/tags` unless `archived=true|all` is sent. Events created from the chart keep serving their maps and inventory unchanged, and the chart can still be opened, edited and published by id. Idempotent — archiving an archived chart keeps its original `archivedAt`. Permanent deletion (`DELETE /api/charts/:chartId`) is only allowed for archived charts without events.
3135
+ # @param chart_id [String]
3136
+ # @param [Hash] opts the optional parameters
3137
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3138
+ # @return [PostApiChartsByChartIdActionsArchive200Response]
3139
+ def post_api_charts_by_chart_id_actions_archive(chart_id, opts = {})
3140
+ data, _status_code, _headers = post_api_charts_by_chart_id_actions_archive_with_http_info(chart_id, opts)
3141
+ data
3142
+ end
3143
+
3144
+ # Archive chart
3145
+ # Soft-deletes a chart: it is hidden from &#x60;GET /api/charts&#x60; and &#x60;GET /api/charts/tags&#x60; unless &#x60;archived&#x3D;true|all&#x60; is sent. Events created from the chart keep serving their maps and inventory unchanged, and the chart can still be opened, edited and published by id. Idempotent — archiving an archived chart keeps its original &#x60;archivedAt&#x60;. Permanent deletion (&#x60;DELETE /api/charts/:chartId&#x60;) is only allowed for archived charts without events.
3146
+ # @param chart_id [String]
3147
+ # @param [Hash] opts the optional parameters
3148
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3149
+ # @return [Array<(PostApiChartsByChartIdActionsArchive200Response, Integer, Hash)>] PostApiChartsByChartIdActionsArchive200Response data, response status code and response headers
3150
+ def post_api_charts_by_chart_id_actions_archive_with_http_info(chart_id, opts = {})
3151
+ if @api_client.config.debugging
3152
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_actions_archive ...'
3153
+ end
3154
+ # verify the required parameter 'chart_id' is set
3155
+ if @api_client.config.client_side_validation && chart_id.nil?
3156
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_archive"
3157
+ end
3158
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3159
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3160
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_archive, must conform to the pattern #{pattern}."
3161
+ end
3162
+
3163
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3164
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_archive, the character length must be smaller than or equal to 255.'
3165
+ end
3166
+
3167
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3168
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_archive, the character length must be great than or equal to 1.'
3169
+ end
3170
+
3171
+ # resource path
3172
+ local_var_path = '/api/charts/{chartId}/actions/archive'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3173
+
3174
+ # query parameters
3175
+ query_params = opts[:query_params] || {}
3176
+
3177
+ # header parameters
3178
+ header_params = opts[:header_params] || {}
3179
+ # HTTP header 'Accept' (if needed)
3180
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'multipart/form-data', 'text/plain']) unless header_params['Accept']
3181
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3182
+
3183
+ # form parameters
3184
+ form_params = opts[:form_params] || {}
3185
+
3186
+ # http body (model)
3187
+ post_body = opts[:debug_body]
3188
+
3189
+ # return_type
3190
+ return_type = opts[:debug_return_type] || 'PostApiChartsByChartIdActionsArchive200Response'
3191
+
3192
+ # auth_names
3193
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3194
+
3195
+ new_options = opts.merge(
3196
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_actions_archive",
3197
+ :header_params => header_params,
3198
+ :query_params => query_params,
3199
+ :form_params => form_params,
3200
+ :body => post_body,
3201
+ :auth_names => auth_names,
3202
+ :return_type => return_type
3203
+ )
3204
+
3205
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3206
+ if @api_client.config.debugging
3207
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_actions_archive\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3208
+ end
3209
+ return data, status_code, headers
3210
+ end
3211
+
3212
+ # Copy a chart to another workspace
3213
+ # Copies the chart (its draft, else the published map) into another workspace as a new **unpublished** chart with fresh object ids. Callers: a dashboard session, or a **workspace admin API key** (`POST /api/keys` with `workspaceAdmin: true`; a scoped key also needs `charts_write`) — other API keys get 403 `ERR_PARTNER_SCOPE`. The user (for a key: the admin it is bound to, re-checked on every call) must be an **admin of both workspaces** (403 `ERR_FORBIDDEN_ROLE`). The target must be active (409 `workspace_deactivated`) and within its plan's chart limit. Both workspaces get a `chart.copy_to_workspace` audit entry; the target also gets `chart.created`. Same workspace: use `POST /charts/{chartId}/duplicate` (400).
3214
+ # @param chart_id [String]
3215
+ # @param post_api_charts_by_chart_id_actions_copy_to_workspace_request [PostApiChartsByChartIdActionsCopyToWorkspaceRequest]
3216
+ # @param [Hash] opts the optional parameters
3217
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3218
+ # @return [nil]
3219
+ def post_api_charts_by_chart_id_actions_copy_to_workspace(chart_id, post_api_charts_by_chart_id_actions_copy_to_workspace_request, opts = {})
3220
+ post_api_charts_by_chart_id_actions_copy_to_workspace_with_http_info(chart_id, post_api_charts_by_chart_id_actions_copy_to_workspace_request, opts)
3221
+ nil
3222
+ end
3223
+
3224
+ # Copy a chart to another workspace
3225
+ # Copies the chart (its draft, else the published map) into another workspace as a new **unpublished** chart with fresh object ids. Callers: a dashboard session, or a **workspace admin API key** (&#x60;POST /api/keys&#x60; with &#x60;workspaceAdmin: true&#x60;; a scoped key also needs &#x60;charts_write&#x60;) — other API keys get 403 &#x60;ERR_PARTNER_SCOPE&#x60;. The user (for a key: the admin it is bound to, re-checked on every call) must be an **admin of both workspaces** (403 &#x60;ERR_FORBIDDEN_ROLE&#x60;). The target must be active (409 &#x60;workspace_deactivated&#x60;) and within its plan&#39;s chart limit. Both workspaces get a &#x60;chart.copy_to_workspace&#x60; audit entry; the target also gets &#x60;chart.created&#x60;. Same workspace: use &#x60;POST /charts/{chartId}/duplicate&#x60; (400).
3226
+ # @param chart_id [String]
3227
+ # @param post_api_charts_by_chart_id_actions_copy_to_workspace_request [PostApiChartsByChartIdActionsCopyToWorkspaceRequest]
3228
+ # @param [Hash] opts the optional parameters
3229
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3230
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3231
+ def post_api_charts_by_chart_id_actions_copy_to_workspace_with_http_info(chart_id, post_api_charts_by_chart_id_actions_copy_to_workspace_request, opts = {})
3232
+ if @api_client.config.debugging
3233
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace ...'
3234
+ end
3235
+ # verify the required parameter 'chart_id' is set
3236
+ if @api_client.config.client_side_validation && chart_id.nil?
3237
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace"
3238
+ end
3239
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3240
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3241
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace, must conform to the pattern #{pattern}."
3242
+ end
3243
+
3244
+ # verify the required parameter 'post_api_charts_by_chart_id_actions_copy_to_workspace_request' is set
3245
+ if @api_client.config.client_side_validation && post_api_charts_by_chart_id_actions_copy_to_workspace_request.nil?
3246
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_by_chart_id_actions_copy_to_workspace_request' when calling ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace"
3247
+ end
3248
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3249
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace, the character length must be smaller than or equal to 255.'
3250
+ end
3251
+
3252
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3253
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace, the character length must be great than or equal to 1.'
3254
+ end
3255
+
3256
+ # resource path
3257
+ local_var_path = '/api/charts/{chartId}/actions/copy-to-workspace'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3258
+
3259
+ # query parameters
3260
+ query_params = opts[:query_params] || {}
3261
+
3262
+ # header parameters
3263
+ header_params = opts[:header_params] || {}
3264
+ # HTTP header 'Content-Type'
3265
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3266
+ if !content_type.nil?
3267
+ header_params['Content-Type'] = content_type
3268
+ end
3269
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3270
+
3271
+ # form parameters
3272
+ form_params = opts[:form_params] || {}
3273
+
3274
+ # http body (model)
3275
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_by_chart_id_actions_copy_to_workspace_request)
3276
+
3277
+ # return_type
3278
+ return_type = opts[:debug_return_type]
3279
+
3280
+ # auth_names
3281
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3282
+
3283
+ new_options = opts.merge(
3284
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_actions_copy_to_workspace",
3285
+ :header_params => header_params,
3286
+ :query_params => query_params,
3287
+ :form_params => form_params,
3288
+ :body => post_body,
3289
+ :auth_names => auth_names,
3290
+ :return_type => return_type
3291
+ )
3292
+
3293
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3294
+ if @api_client.config.debugging
3295
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_actions_copy_to_workspace\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3296
+ end
3297
+ return data, status_code, headers
3298
+ end
3299
+
3300
+ # Unarchive chart
3301
+ # Returns an archived chart to the default chart lists. Idempotent for charts that are not archived.
3302
+ # @param chart_id [String]
3303
+ # @param [Hash] opts the optional parameters
3304
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3305
+ # @return [PostApiChartsByChartIdActionsArchive200Response]
3306
+ def post_api_charts_by_chart_id_actions_unarchive(chart_id, opts = {})
3307
+ data, _status_code, _headers = post_api_charts_by_chart_id_actions_unarchive_with_http_info(chart_id, opts)
3308
+ data
3309
+ end
3310
+
3311
+ # Unarchive chart
3312
+ # Returns an archived chart to the default chart lists. Idempotent for charts that are not archived.
3313
+ # @param chart_id [String]
3314
+ # @param [Hash] opts the optional parameters
3315
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3316
+ # @return [Array<(PostApiChartsByChartIdActionsArchive200Response, Integer, Hash)>] PostApiChartsByChartIdActionsArchive200Response data, response status code and response headers
3317
+ def post_api_charts_by_chart_id_actions_unarchive_with_http_info(chart_id, opts = {})
3318
+ if @api_client.config.debugging
3319
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_actions_unarchive ...'
3320
+ end
3321
+ # verify the required parameter 'chart_id' is set
3322
+ if @api_client.config.client_side_validation && chart_id.nil?
3323
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_unarchive"
3324
+ end
3325
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3326
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3327
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_unarchive, must conform to the pattern #{pattern}."
3328
+ end
3329
+
3330
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3331
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_unarchive, the character length must be smaller than or equal to 255.'
3332
+ end
3333
+
3334
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3335
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_unarchive, the character length must be great than or equal to 1.'
3336
+ end
3337
+
3338
+ # resource path
3339
+ local_var_path = '/api/charts/{chartId}/actions/unarchive'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3340
+
3341
+ # query parameters
3342
+ query_params = opts[:query_params] || {}
3343
+
3344
+ # header parameters
3345
+ header_params = opts[:header_params] || {}
3346
+ # HTTP header 'Accept' (if needed)
3347
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'multipart/form-data', 'text/plain']) unless header_params['Accept']
3348
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3349
+
3350
+ # form parameters
3351
+ form_params = opts[:form_params] || {}
3352
+
3353
+ # http body (model)
3354
+ post_body = opts[:debug_body]
3355
+
3356
+ # return_type
3357
+ return_type = opts[:debug_return_type] || 'PostApiChartsByChartIdActionsArchive200Response'
3358
+
3359
+ # auth_names
3360
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3361
+
3362
+ new_options = opts.merge(
3363
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_actions_unarchive",
3364
+ :header_params => header_params,
3365
+ :query_params => query_params,
3366
+ :form_params => form_params,
3367
+ :body => post_body,
3368
+ :auth_names => auth_names,
3369
+ :return_type => return_type
3370
+ )
3371
+
3372
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3373
+ if @api_client.config.debugging
3374
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_actions_unarchive\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3375
+ end
3376
+ return data, status_code, headers
3377
+ end
3378
+
3379
+ # Validate a chart map (dry run)
3380
+ # Runs the exact validation that `POST /charts/{chartId}/map/publish` applies (payload limits, the designer rules at the workspace severity — see `GET /api/workspace/chart-validation` — and seat-id ownership) **without writing anything**. Without a body the current draft (or, when there is none, the published map) is validated; `?version=published` validates the published chart even while a draft exists and `?version=draft` only the draft (404 `not_published` / `draft_not_found` when that version does not exist). With a body `{ seats, shapes?, background?, reference? }` (same shape as PUT …/map/draft) that content is validated instead (`version` is ignored). Always 200 with `publishable`, counts and `issues[]` (`{ code, severity, objectIds, message, count }`). Requires read access.
3381
+ # @param chart_id [String]
3382
+ # @param post_api_charts_by_chart_id_actions_validate_request [PostApiChartsByChartIdActionsValidateRequest]
3383
+ # @param [Hash] opts the optional parameters
3384
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60;. Omitted: the draft when there is one, else the published map.
3385
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3386
+ # @return [nil]
3387
+ def post_api_charts_by_chart_id_actions_validate(chart_id, post_api_charts_by_chart_id_actions_validate_request, opts = {})
3388
+ post_api_charts_by_chart_id_actions_validate_with_http_info(chart_id, post_api_charts_by_chart_id_actions_validate_request, opts)
3389
+ nil
3390
+ end
3391
+
3392
+ # Validate a chart map (dry run)
3393
+ # Runs the exact validation that &#x60;POST /charts/{chartId}/map/publish&#x60; applies (payload limits, the designer rules at the workspace severity — see &#x60;GET /api/workspace/chart-validation&#x60; — and seat-id ownership) **without writing anything**. Without a body the current draft (or, when there is none, the published map) is validated; &#x60;?version&#x3D;published&#x60; validates the published chart even while a draft exists and &#x60;?version&#x3D;draft&#x60; only the draft (404 &#x60;not_published&#x60; / &#x60;draft_not_found&#x60; when that version does not exist). With a body &#x60;{ seats, shapes?, background?, reference? }&#x60; (same shape as PUT …/map/draft) that content is validated instead (&#x60;version&#x60; is ignored). Always 200 with &#x60;publishable&#x60;, counts and &#x60;issues[]&#x60; (&#x60;{ code, severity, objectIds, message, count }&#x60;). Requires read access.
3394
+ # @param chart_id [String]
3395
+ # @param post_api_charts_by_chart_id_actions_validate_request [PostApiChartsByChartIdActionsValidateRequest]
3396
+ # @param [Hash] opts the optional parameters
3397
+ # @option opts [String] :version &#x60;published&#x60; or &#x60;draft&#x60;. Omitted: the draft when there is one, else the published map.
3398
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3399
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3400
+ def post_api_charts_by_chart_id_actions_validate_with_http_info(chart_id, post_api_charts_by_chart_id_actions_validate_request, opts = {})
3401
+ if @api_client.config.debugging
3402
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_actions_validate ...'
3403
+ end
3404
+ # verify the required parameter 'chart_id' is set
3405
+ if @api_client.config.client_side_validation && chart_id.nil?
3406
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_validate"
3407
+ end
3408
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3409
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3410
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_actions_validate, must conform to the pattern #{pattern}."
3411
+ end
3412
+
3413
+ # verify the required parameter 'post_api_charts_by_chart_id_actions_validate_request' is set
3414
+ if @api_client.config.client_side_validation && post_api_charts_by_chart_id_actions_validate_request.nil?
3415
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_by_chart_id_actions_validate_request' when calling ChartsApi.post_api_charts_by_chart_id_actions_validate"
3416
+ end
3417
+ allowable_values = ["published", "draft"]
3418
+ if @api_client.config.client_side_validation && opts[:'version'] && !allowable_values.include?(opts[:'version'])
3419
+ fail ArgumentError, "invalid value for \"version\", must be one of #{allowable_values}"
3420
+ end
3421
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3422
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_validate, the character length must be smaller than or equal to 255.'
3423
+ end
3424
+
3425
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3426
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_actions_validate, the character length must be great than or equal to 1.'
3427
+ end
3428
+
3429
+ # resource path
3430
+ local_var_path = '/api/charts/{chartId}/actions/validate'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3431
+
3432
+ # query parameters
3433
+ query_params = opts[:query_params] || {}
3434
+ query_params[:'version'] = opts[:'version'] if !opts[:'version'].nil?
3435
+
3436
+ # header parameters
3437
+ header_params = opts[:header_params] || {}
3438
+ # HTTP header 'Content-Type'
3439
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3440
+ if !content_type.nil?
3441
+ header_params['Content-Type'] = content_type
3442
+ end
3443
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3444
+
3445
+ # form parameters
3446
+ form_params = opts[:form_params] || {}
3447
+
3448
+ # http body (model)
3449
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_by_chart_id_actions_validate_request)
3450
+
3451
+ # return_type
3452
+ return_type = opts[:debug_return_type]
3453
+
3454
+ # auth_names
3455
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3456
+
3457
+ new_options = opts.merge(
3458
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_actions_validate",
3459
+ :header_params => header_params,
3460
+ :query_params => query_params,
3461
+ :form_params => form_params,
3462
+ :body => post_body,
3463
+ :auth_names => auth_names,
3464
+ :return_type => return_type
3465
+ )
3466
+
3467
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3468
+ if @api_client.config.debugging
3469
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_actions_validate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3470
+ end
3471
+ return data, status_code, headers
3472
+ end
3473
+
3474
+ # Duplicate chart
3475
+ # Creates a new unpublished chart draft copied from the source chart (seats, GA areas, shapes, images).
3476
+ # @param chart_id [String]
3477
+ # @param post_api_charts_by_chart_id_duplicate_request [PostApiChartsByChartIdDuplicateRequest]
3478
+ # @param [Hash] opts the optional parameters
3479
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3480
+ # @return [nil]
3481
+ def post_api_charts_by_chart_id_duplicate(chart_id, post_api_charts_by_chart_id_duplicate_request, opts = {})
3482
+ post_api_charts_by_chart_id_duplicate_with_http_info(chart_id, post_api_charts_by_chart_id_duplicate_request, opts)
3483
+ nil
3484
+ end
3485
+
3486
+ # Duplicate chart
3487
+ # Creates a new unpublished chart draft copied from the source chart (seats, GA areas, shapes, images).
3488
+ # @param chart_id [String]
3489
+ # @param post_api_charts_by_chart_id_duplicate_request [PostApiChartsByChartIdDuplicateRequest]
3490
+ # @param [Hash] opts the optional parameters
3491
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3492
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3493
+ def post_api_charts_by_chart_id_duplicate_with_http_info(chart_id, post_api_charts_by_chart_id_duplicate_request, opts = {})
3494
+ if @api_client.config.debugging
3495
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_duplicate ...'
3496
+ end
3497
+ # verify the required parameter 'chart_id' is set
3498
+ if @api_client.config.client_side_validation && chart_id.nil?
3499
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_duplicate"
3500
+ end
3501
+ if @api_client.config.client_side_validation && chart_id.to_s.length > 36
3502
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.post_api_charts_by_chart_id_duplicate, the character length must be smaller than or equal to 36.'
3503
+ end
3504
+
3505
+ if @api_client.config.client_side_validation && chart_id.to_s.length < 36
3506
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.post_api_charts_by_chart_id_duplicate, the character length must be great than or equal to 36.'
3507
+ end
3508
+
3509
+ # verify the required parameter 'post_api_charts_by_chart_id_duplicate_request' is set
3510
+ if @api_client.config.client_side_validation && post_api_charts_by_chart_id_duplicate_request.nil?
3511
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_by_chart_id_duplicate_request' when calling ChartsApi.post_api_charts_by_chart_id_duplicate"
3512
+ end
3513
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3514
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_duplicate, the character length must be smaller than or equal to 255.'
3515
+ end
3516
+
3517
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3518
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_duplicate, the character length must be great than or equal to 1.'
3519
+ end
3520
+
3521
+ # resource path
3522
+ local_var_path = '/api/charts/{chartId}/duplicate'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3523
+
3524
+ # query parameters
3525
+ query_params = opts[:query_params] || {}
3526
+
3527
+ # header parameters
3528
+ header_params = opts[:header_params] || {}
3529
+ # HTTP header 'Content-Type'
3530
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3531
+ if !content_type.nil?
3532
+ header_params['Content-Type'] = content_type
3533
+ end
3534
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3535
+
3536
+ # form parameters
3537
+ form_params = opts[:form_params] || {}
3538
+
3539
+ # http body (model)
3540
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_by_chart_id_duplicate_request)
3541
+
3542
+ # return_type
3543
+ return_type = opts[:debug_return_type]
3544
+
3545
+ # auth_names
3546
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3547
+
3548
+ new_options = opts.merge(
3549
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_duplicate",
3550
+ :header_params => header_params,
3551
+ :query_params => query_params,
3552
+ :form_params => form_params,
3553
+ :body => post_body,
3554
+ :auth_names => auth_names,
3555
+ :return_type => return_type
3556
+ )
3557
+
3558
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3559
+ if @api_client.config.debugging
3560
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_duplicate\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3561
+ end
3562
+ return data, status_code, headers
3563
+ end
3564
+
3565
+ # Discard chart draft
3566
+ # Throws away unpublished draft changes; `GET .../map/draft` then returns the published map again. The published map, versions and linked events are untouched. `409 ERR_DRAFT_NOTHING_TO_DISCARD` when the draft has no unpublished changes, `409 ERR_MAP_NEVER_PUBLISHED` when the chart was never published (there is no version to reset to).
3567
+ # @param chart_id [String]
3568
+ # @param [Hash] opts the optional parameters
3569
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3570
+ # @return [nil]
3571
+ def post_api_charts_by_chart_id_map_draft_actions_discard(chart_id, opts = {})
3572
+ post_api_charts_by_chart_id_map_draft_actions_discard_with_http_info(chart_id, opts)
3573
+ nil
3574
+ end
3575
+
3576
+ # Discard chart draft
3577
+ # Throws away unpublished draft changes; &#x60;GET .../map/draft&#x60; then returns the published map again. The published map, versions and linked events are untouched. &#x60;409 ERR_DRAFT_NOTHING_TO_DISCARD&#x60; when the draft has no unpublished changes, &#x60;409 ERR_MAP_NEVER_PUBLISHED&#x60; when the chart was never published (there is no version to reset to).
3578
+ # @param chart_id [String]
3579
+ # @param [Hash] opts the optional parameters
3580
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3581
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3582
+ def post_api_charts_by_chart_id_map_draft_actions_discard_with_http_info(chart_id, opts = {})
3583
+ if @api_client.config.debugging
3584
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_map_draft_actions_discard ...'
3585
+ end
3586
+ # verify the required parameter 'chart_id' is set
3587
+ if @api_client.config.client_side_validation && chart_id.nil?
3588
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_map_draft_actions_discard"
3589
+ end
3590
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3591
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3592
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_map_draft_actions_discard, must conform to the pattern #{pattern}."
3593
+ end
3594
+
3595
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3596
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_map_draft_actions_discard, the character length must be smaller than or equal to 255.'
3597
+ end
3598
+
3599
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3600
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_map_draft_actions_discard, the character length must be great than or equal to 1.'
3601
+ end
3602
+
3603
+ # resource path
3604
+ local_var_path = '/api/charts/{chartId}/map/draft/actions/discard'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3605
+
3606
+ # query parameters
3607
+ query_params = opts[:query_params] || {}
3608
+
3609
+ # header parameters
3610
+ header_params = opts[:header_params] || {}
3611
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3612
+
3613
+ # form parameters
3614
+ form_params = opts[:form_params] || {}
3615
+
3616
+ # http body (model)
3617
+ post_body = opts[:debug_body]
3618
+
3619
+ # return_type
3620
+ return_type = opts[:debug_return_type]
3621
+
3622
+ # auth_names
3623
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3624
+
3625
+ new_options = opts.merge(
3626
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_map_draft_actions_discard",
3627
+ :header_params => header_params,
3628
+ :query_params => query_params,
3629
+ :form_params => form_params,
3630
+ :body => post_body,
3631
+ :auth_names => auth_names,
3632
+ :return_type => return_type
3633
+ )
3634
+
3635
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3636
+ if @api_client.config.debugging
3637
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_map_draft_actions_discard\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3638
+ end
3639
+ return data, status_code, headers
3640
+ end
3641
+
3642
+ # Publish chart map template
3643
+ # Promotes draft → `chart_seat_templates` + `chart_layouts`. Events clone templates on create. The draft is validated with the same rules the designer runs, at the **workspace severity** (`GET /api/workspace/chart-validation`; rules set to `off` are skipped). Error-level issues return `422 { error: \"validation_failed\", issues: [{ code, severity, objectIds, message, count, scope? }] }` (warnings included); warning-level issues do not block and are returned in `warnings`. Per-rule counts are stored with the version, so `GET /api/charts` (`validation`) and event creation (409 `chart_invalid`) never re-run the rules. Every successful publish appends an immutable version (`version`, `geometryHash`; `sameAsVersion` names an earlier version with identical content, e.g. after a restore). An optional JSON body `{ \"note\": \"...\" }` (≤ 280 chars) is stored on the version. See `GET /api/charts/:chartId/versions`. Emits the `chart.published` webhook. Use `POST /api/charts/:chartId/actions/validate` for a dry run. With `{ \"autoPublish\": true }` (designer auto-publish, off by default) the publish only runs while no event uses the chart; otherwise 409 `{ code: \"ERR_AUTO_PUBLISH_CHART_HAS_EVENTS\", params: { eventCount } }`.
3644
+ # @param chart_id [String]
3645
+ # @param post_api_charts_by_chart_id_map_publish_request [PostApiChartsByChartIdMapPublishRequest]
3646
+ # @param [Hash] opts the optional parameters
3647
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3648
+ # @return [nil]
3649
+ def post_api_charts_by_chart_id_map_publish(chart_id, post_api_charts_by_chart_id_map_publish_request, opts = {})
3650
+ post_api_charts_by_chart_id_map_publish_with_http_info(chart_id, post_api_charts_by_chart_id_map_publish_request, opts)
3651
+ nil
3652
+ end
3653
+
3654
+ # Publish chart map template
3655
+ # Promotes draft → &#x60;chart_seat_templates&#x60; + &#x60;chart_layouts&#x60;. Events clone templates on create. The draft is validated with the same rules the designer runs, at the **workspace severity** (&#x60;GET /api/workspace/chart-validation&#x60;; rules set to &#x60;off&#x60; are skipped). Error-level issues return &#x60;422 { error: \&quot;validation_failed\&quot;, issues: [{ code, severity, objectIds, message, count, scope? }] }&#x60; (warnings included); warning-level issues do not block and are returned in &#x60;warnings&#x60;. Per-rule counts are stored with the version, so &#x60;GET /api/charts&#x60; (&#x60;validation&#x60;) and event creation (409 &#x60;chart_invalid&#x60;) never re-run the rules. Every successful publish appends an immutable version (&#x60;version&#x60;, &#x60;geometryHash&#x60;; &#x60;sameAsVersion&#x60; names an earlier version with identical content, e.g. after a restore). An optional JSON body &#x60;{ \&quot;note\&quot;: \&quot;...\&quot; }&#x60; (≤ 280 chars) is stored on the version. See &#x60;GET /api/charts/:chartId/versions&#x60;. Emits the &#x60;chart.published&#x60; webhook. Use &#x60;POST /api/charts/:chartId/actions/validate&#x60; for a dry run. With &#x60;{ \&quot;autoPublish\&quot;: true }&#x60; (designer auto-publish, off by default) the publish only runs while no event uses the chart; otherwise 409 &#x60;{ code: \&quot;ERR_AUTO_PUBLISH_CHART_HAS_EVENTS\&quot;, params: { eventCount } }&#x60;.
3656
+ # @param chart_id [String]
3657
+ # @param post_api_charts_by_chart_id_map_publish_request [PostApiChartsByChartIdMapPublishRequest]
3658
+ # @param [Hash] opts the optional parameters
3659
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3660
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3661
+ def post_api_charts_by_chart_id_map_publish_with_http_info(chart_id, post_api_charts_by_chart_id_map_publish_request, opts = {})
3662
+ if @api_client.config.debugging
3663
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_map_publish ...'
3664
+ end
3665
+ # verify the required parameter 'chart_id' is set
3666
+ if @api_client.config.client_side_validation && chart_id.nil?
3667
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_map_publish"
3668
+ end
3669
+ if @api_client.config.client_side_validation && chart_id.to_s.length > 36
3670
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.post_api_charts_by_chart_id_map_publish, the character length must be smaller than or equal to 36.'
3671
+ end
3672
+
3673
+ if @api_client.config.client_side_validation && chart_id.to_s.length < 36
3674
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.post_api_charts_by_chart_id_map_publish, the character length must be great than or equal to 36.'
3675
+ end
3676
+
3677
+ # verify the required parameter 'post_api_charts_by_chart_id_map_publish_request' is set
3678
+ if @api_client.config.client_side_validation && post_api_charts_by_chart_id_map_publish_request.nil?
3679
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_by_chart_id_map_publish_request' when calling ChartsApi.post_api_charts_by_chart_id_map_publish"
3680
+ end
3681
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3682
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_map_publish, the character length must be smaller than or equal to 255.'
3683
+ end
3684
+
3685
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3686
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_map_publish, the character length must be great than or equal to 1.'
3687
+ end
3688
+
3689
+ # resource path
3690
+ local_var_path = '/api/charts/{chartId}/map/publish'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3691
+
3692
+ # query parameters
3693
+ query_params = opts[:query_params] || {}
3694
+
3695
+ # header parameters
3696
+ header_params = opts[:header_params] || {}
3697
+ # HTTP header 'Accept' (if needed)
3698
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'multipart/form-data', 'text/plain']) unless header_params['Accept']
3699
+ # HTTP header 'Content-Type'
3700
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3701
+ if !content_type.nil?
3702
+ header_params['Content-Type'] = content_type
3703
+ end
3704
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3705
+
3706
+ # form parameters
3707
+ form_params = opts[:form_params] || {}
3708
+
3709
+ # http body (model)
3710
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_by_chart_id_map_publish_request)
3711
+
3712
+ # return_type
3713
+ return_type = opts[:debug_return_type]
3714
+
3715
+ # auth_names
3716
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3717
+
3718
+ new_options = opts.merge(
3719
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_map_publish",
3720
+ :header_params => header_params,
3721
+ :query_params => query_params,
3722
+ :form_params => form_params,
3723
+ :body => post_body,
3724
+ :auth_names => auth_names,
3725
+ :return_type => return_type
3726
+ )
3727
+
3728
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3729
+ if @api_client.config.debugging
3730
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_map_publish\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3731
+ end
3732
+ return data, status_code, headers
3733
+ end
3734
+
3735
+ # Create a public preview link
3736
+ # Signed, expiring link to a read-only rendering of the chart's **published** geometry (no login, no event data, no prices — category names and colors only). Response `{ chartId, exp, signature, expiresAt, path }`; `path` is relative to the dashboard origin (`/preview/charts/{chartId}?exp=…&sig=…`). The signature is an HMAC with a per-chart secret; every link of a chart stays valid until it expires or DELETE revokes them all. 409 `chart_not_published` when the chart was never published.
3737
+ # @param chart_id [String]
3738
+ # @param post_api_charts_by_chart_id_preview_link_request [PostApiChartsByChartIdPreviewLinkRequest]
3739
+ # @param [Hash] opts the optional parameters
3740
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3741
+ # @return [nil]
3742
+ def post_api_charts_by_chart_id_preview_link(chart_id, post_api_charts_by_chart_id_preview_link_request, opts = {})
3743
+ post_api_charts_by_chart_id_preview_link_with_http_info(chart_id, post_api_charts_by_chart_id_preview_link_request, opts)
3744
+ nil
3745
+ end
3746
+
3747
+ # Create a public preview link
3748
+ # Signed, expiring link to a read-only rendering of the chart&#39;s **published** geometry (no login, no event data, no prices — category names and colors only). Response &#x60;{ chartId, exp, signature, expiresAt, path }&#x60;; &#x60;path&#x60; is relative to the dashboard origin (&#x60;/preview/charts/{chartId}?exp&#x3D;…&amp;sig&#x3D;…&#x60;). The signature is an HMAC with a per-chart secret; every link of a chart stays valid until it expires or DELETE revokes them all. 409 &#x60;chart_not_published&#x60; when the chart was never published.
3749
+ # @param chart_id [String]
3750
+ # @param post_api_charts_by_chart_id_preview_link_request [PostApiChartsByChartIdPreviewLinkRequest]
3751
+ # @param [Hash] opts the optional parameters
3752
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3753
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3754
+ def post_api_charts_by_chart_id_preview_link_with_http_info(chart_id, post_api_charts_by_chart_id_preview_link_request, opts = {})
3755
+ if @api_client.config.debugging
3756
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_preview_link ...'
3757
+ end
3758
+ # verify the required parameter 'chart_id' is set
3759
+ if @api_client.config.client_side_validation && chart_id.nil?
3760
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_preview_link"
3761
+ end
3762
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3763
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3764
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_preview_link, must conform to the pattern #{pattern}."
3765
+ end
3766
+
3767
+ # verify the required parameter 'post_api_charts_by_chart_id_preview_link_request' is set
3768
+ if @api_client.config.client_side_validation && post_api_charts_by_chart_id_preview_link_request.nil?
3769
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_by_chart_id_preview_link_request' when calling ChartsApi.post_api_charts_by_chart_id_preview_link"
3770
+ end
3771
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3772
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_preview_link, the character length must be smaller than or equal to 255.'
3773
+ end
3774
+
3775
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3776
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_preview_link, the character length must be great than or equal to 1.'
3777
+ end
3778
+
3779
+ # resource path
3780
+ local_var_path = '/api/charts/{chartId}/preview-link'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3781
+
3782
+ # query parameters
3783
+ query_params = opts[:query_params] || {}
3784
+
3785
+ # header parameters
3786
+ header_params = opts[:header_params] || {}
3787
+ # HTTP header 'Content-Type'
3788
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3789
+ if !content_type.nil?
3790
+ header_params['Content-Type'] = content_type
3791
+ end
3792
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3793
+
3794
+ # form parameters
3795
+ form_params = opts[:form_params] || {}
3796
+
3797
+ # http body (model)
3798
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_by_chart_id_preview_link_request)
3799
+
3800
+ # return_type
3801
+ return_type = opts[:debug_return_type]
3802
+
3803
+ # auth_names
3804
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3805
+
3806
+ new_options = opts.merge(
3807
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_preview_link",
3808
+ :header_params => header_params,
3809
+ :query_params => query_params,
3810
+ :form_params => form_params,
3811
+ :body => post_body,
3812
+ :auth_names => auth_names,
3813
+ :return_type => return_type
3814
+ )
3815
+
3816
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3817
+ if @api_client.config.debugging
3818
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_preview_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3819
+ end
3820
+ return data, status_code, headers
3821
+ end
3822
+
3823
+ # Restore a version into the draft
3824
+ # Overwrites the chart draft with the content of a published version (seats, shapes, categories, images). It never publishes: the live map and linked events are untouched until `POST /api/charts/:chartId/map/publish`, which runs the normal validation and records a new version. Any unpublished draft changes are replaced. Requires map authoring rights (admin / map editor dashboard role or `x-api-key`).
3825
+ # @param chart_id [String]
3826
+ # @param version [Float] Version number (1-based).
3827
+ # @param [Hash] opts the optional parameters
3828
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3829
+ # @return [nil]
3830
+ def post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft(chart_id, version, opts = {})
3831
+ post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft_with_http_info(chart_id, version, opts)
3832
+ nil
3833
+ end
3834
+
3835
+ # Restore a version into the draft
3836
+ # Overwrites the chart draft with the content of a published version (seats, shapes, categories, images). It never publishes: the live map and linked events are untouched until &#x60;POST /api/charts/:chartId/map/publish&#x60;, which runs the normal validation and records a new version. Any unpublished draft changes are replaced. Requires map authoring rights (admin / map editor dashboard role or &#x60;x-api-key&#x60;).
3837
+ # @param chart_id [String]
3838
+ # @param version [Float] Version number (1-based).
3839
+ # @param [Hash] opts the optional parameters
3840
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3841
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3842
+ def post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft_with_http_info(chart_id, version, opts = {})
3843
+ if @api_client.config.debugging
3844
+ @api_client.config.logger.debug 'Calling API: ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft ...'
3845
+ end
3846
+ # verify the required parameter 'chart_id' is set
3847
+ if @api_client.config.client_side_validation && chart_id.nil?
3848
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft"
3849
+ end
3850
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
3851
+ if @api_client.config.client_side_validation && chart_id !~ pattern
3852
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft, must conform to the pattern #{pattern}."
3853
+ end
3854
+
3855
+ # verify the required parameter 'version' is set
3856
+ if @api_client.config.client_side_validation && version.nil?
3857
+ fail ArgumentError, "Missing the required parameter 'version' when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft"
3858
+ end
3859
+ if @api_client.config.client_side_validation && version > 2147483647
3860
+ fail ArgumentError, 'invalid value for "version" when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft, must be smaller than or equal to 2147483647.'
3861
+ end
3862
+
3863
+ if @api_client.config.client_side_validation && version < 1
3864
+ fail ArgumentError, 'invalid value for "version" when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft, must be greater than or equal to 1.'
3865
+ end
3866
+
3867
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3868
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft, the character length must be smaller than or equal to 255.'
3869
+ end
3870
+
3871
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3872
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft, the character length must be great than or equal to 1.'
3873
+ end
3874
+
3875
+ # resource path
3876
+ local_var_path = '/api/charts/{chartId}/versions/{version}/actions/restore-to-draft'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s)).sub('{' + 'version' + '}', CGI.escape(version.to_s))
3877
+
3878
+ # query parameters
3879
+ query_params = opts[:query_params] || {}
3880
+
3881
+ # header parameters
3882
+ header_params = opts[:header_params] || {}
3883
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3884
+
3885
+ # form parameters
3886
+ form_params = opts[:form_params] || {}
3887
+
3888
+ # http body (model)
3889
+ post_body = opts[:debug_body]
3890
+
3891
+ # return_type
3892
+ return_type = opts[:debug_return_type]
3893
+
3894
+ # auth_names
3895
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3896
+
3897
+ new_options = opts.merge(
3898
+ :operation => :"ChartsApi.post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft",
3899
+ :header_params => header_params,
3900
+ :query_params => query_params,
3901
+ :form_params => form_params,
3902
+ :body => post_body,
3903
+ :auth_names => auth_names,
3904
+ :return_type => return_type
3905
+ )
3906
+
3907
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
3908
+ if @api_client.config.debugging
3909
+ @api_client.config.logger.debug "API called: ChartsApi#post_api_charts_by_chart_id_versions_by_version_actions_restore_to_draft\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3910
+ end
3911
+ return data, status_code, headers
3912
+ end
3913
+
3914
+ # Save chart map draft
3915
+ # Saves the designer draft (`draftUpdatedAt` in the response). With `baseDraftUpdatedAt` the save is conflict-safe: 409 `draft_conflict` (with the current `draftUpdatedAt`) when the draft changed since that version — used by the designer autosave.
3916
+ # @param chart_id [String]
3917
+ # @param post_api_charts_by_chart_id_actions_validate_request [PostApiChartsByChartIdActionsValidateRequest]
3918
+ # @param [Hash] opts the optional parameters
3919
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3920
+ # @return [nil]
3921
+ def put_api_charts_by_chart_id_map_draft(chart_id, post_api_charts_by_chart_id_actions_validate_request, opts = {})
3922
+ put_api_charts_by_chart_id_map_draft_with_http_info(chart_id, post_api_charts_by_chart_id_actions_validate_request, opts)
3923
+ nil
3924
+ end
3925
+
3926
+ # Save chart map draft
3927
+ # Saves the designer draft (&#x60;draftUpdatedAt&#x60; in the response). With &#x60;baseDraftUpdatedAt&#x60; the save is conflict-safe: 409 &#x60;draft_conflict&#x60; (with the current &#x60;draftUpdatedAt&#x60;) when the draft changed since that version — used by the designer autosave.
3928
+ # @param chart_id [String]
3929
+ # @param post_api_charts_by_chart_id_actions_validate_request [PostApiChartsByChartIdActionsValidateRequest]
3930
+ # @param [Hash] opts the optional parameters
3931
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
3932
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
3933
+ def put_api_charts_by_chart_id_map_draft_with_http_info(chart_id, post_api_charts_by_chart_id_actions_validate_request, opts = {})
3934
+ if @api_client.config.debugging
3935
+ @api_client.config.logger.debug 'Calling API: ChartsApi.put_api_charts_by_chart_id_map_draft ...'
3936
+ end
3937
+ # verify the required parameter 'chart_id' is set
3938
+ if @api_client.config.client_side_validation && chart_id.nil?
3939
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.put_api_charts_by_chart_id_map_draft"
3940
+ end
3941
+ if @api_client.config.client_side_validation && chart_id.to_s.length > 36
3942
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.put_api_charts_by_chart_id_map_draft, the character length must be smaller than or equal to 36.'
3943
+ end
3944
+
3945
+ if @api_client.config.client_side_validation && chart_id.to_s.length < 36
3946
+ fail ArgumentError, 'invalid value for "chart_id" when calling ChartsApi.put_api_charts_by_chart_id_map_draft, the character length must be great than or equal to 36.'
3947
+ end
3948
+
3949
+ # verify the required parameter 'post_api_charts_by_chart_id_actions_validate_request' is set
3950
+ if @api_client.config.client_side_validation && post_api_charts_by_chart_id_actions_validate_request.nil?
3951
+ fail ArgumentError, "Missing the required parameter 'post_api_charts_by_chart_id_actions_validate_request' when calling ChartsApi.put_api_charts_by_chart_id_map_draft"
3952
+ end
3953
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
3954
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.put_api_charts_by_chart_id_map_draft, the character length must be smaller than or equal to 255.'
3955
+ end
3956
+
3957
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
3958
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.put_api_charts_by_chart_id_map_draft, the character length must be great than or equal to 1.'
3959
+ end
3960
+
3961
+ # resource path
3962
+ local_var_path = '/api/charts/{chartId}/map/draft'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
3963
+
3964
+ # query parameters
3965
+ query_params = opts[:query_params] || {}
3966
+
3967
+ # header parameters
3968
+ header_params = opts[:header_params] || {}
3969
+ # HTTP header 'Content-Type'
3970
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
3971
+ if !content_type.nil?
3972
+ header_params['Content-Type'] = content_type
3973
+ end
3974
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
3975
+
3976
+ # form parameters
3977
+ form_params = opts[:form_params] || {}
3978
+
3979
+ # http body (model)
3980
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(post_api_charts_by_chart_id_actions_validate_request)
3981
+
3982
+ # return_type
3983
+ return_type = opts[:debug_return_type]
3984
+
3985
+ # auth_names
3986
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
3987
+
3988
+ new_options = opts.merge(
3989
+ :operation => :"ChartsApi.put_api_charts_by_chart_id_map_draft",
3990
+ :header_params => header_params,
3991
+ :query_params => query_params,
3992
+ :form_params => form_params,
3993
+ :body => post_body,
3994
+ :auth_names => auth_names,
3995
+ :return_type => return_type
3996
+ )
3997
+
3998
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
3999
+ if @api_client.config.debugging
4000
+ @api_client.config.logger.debug "API called: ChartsApi#put_api_charts_by_chart_id_map_draft\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4001
+ end
4002
+ return data, status_code, headers
4003
+ end
4004
+
4005
+ # Replace chart tags
4006
+ # Replaces every tag on the chart. Returns the stored tags sorted case-insensitively. `422 ERR_CHART_TAG_INVALID` for an empty / too long / comma-containing tag, `422 ERR_CHART_TAG_LIMIT` above 20 distinct tags. Filter lists with `GET /api/charts?tag=vip,arena`.
4007
+ # @param chart_id [String]
4008
+ # @param put_api_charts_by_chart_id_tags_request [PutApiChartsByChartIdTagsRequest]
4009
+ # @param [Hash] opts the optional parameters
4010
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
4011
+ # @return [nil]
4012
+ def put_api_charts_by_chart_id_tags(chart_id, put_api_charts_by_chart_id_tags_request, opts = {})
4013
+ put_api_charts_by_chart_id_tags_with_http_info(chart_id, put_api_charts_by_chart_id_tags_request, opts)
4014
+ nil
4015
+ end
4016
+
4017
+ # Replace chart tags
4018
+ # Replaces every tag on the chart. Returns the stored tags sorted case-insensitively. &#x60;422 ERR_CHART_TAG_INVALID&#x60; for an empty / too long / comma-containing tag, &#x60;422 ERR_CHART_TAG_LIMIT&#x60; above 20 distinct tags. Filter lists with &#x60;GET /api/charts?tag&#x3D;vip,arena&#x60;.
4019
+ # @param chart_id [String]
4020
+ # @param put_api_charts_by_chart_id_tags_request [PutApiChartsByChartIdTagsRequest]
4021
+ # @param [Hash] opts the optional parameters
4022
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
4023
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
4024
+ def put_api_charts_by_chart_id_tags_with_http_info(chart_id, put_api_charts_by_chart_id_tags_request, opts = {})
4025
+ if @api_client.config.debugging
4026
+ @api_client.config.logger.debug 'Calling API: ChartsApi.put_api_charts_by_chart_id_tags ...'
4027
+ end
4028
+ # verify the required parameter 'chart_id' is set
4029
+ if @api_client.config.client_side_validation && chart_id.nil?
4030
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.put_api_charts_by_chart_id_tags"
4031
+ end
4032
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
4033
+ if @api_client.config.client_side_validation && chart_id !~ pattern
4034
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.put_api_charts_by_chart_id_tags, must conform to the pattern #{pattern}."
4035
+ end
4036
+
4037
+ # verify the required parameter 'put_api_charts_by_chart_id_tags_request' is set
4038
+ if @api_client.config.client_side_validation && put_api_charts_by_chart_id_tags_request.nil?
4039
+ fail ArgumentError, "Missing the required parameter 'put_api_charts_by_chart_id_tags_request' when calling ChartsApi.put_api_charts_by_chart_id_tags"
4040
+ end
4041
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
4042
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.put_api_charts_by_chart_id_tags, the character length must be smaller than or equal to 255.'
4043
+ end
4044
+
4045
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
4046
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.put_api_charts_by_chart_id_tags, the character length must be great than or equal to 1.'
4047
+ end
4048
+
4049
+ # resource path
4050
+ local_var_path = '/api/charts/{chartId}/tags'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s))
4051
+
4052
+ # query parameters
4053
+ query_params = opts[:query_params] || {}
4054
+
4055
+ # header parameters
4056
+ header_params = opts[:header_params] || {}
4057
+ # HTTP header 'Content-Type'
4058
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
4059
+ if !content_type.nil?
4060
+ header_params['Content-Type'] = content_type
4061
+ end
4062
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
4063
+
4064
+ # form parameters
4065
+ form_params = opts[:form_params] || {}
4066
+
4067
+ # http body (model)
4068
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(put_api_charts_by_chart_id_tags_request)
4069
+
4070
+ # return_type
4071
+ return_type = opts[:debug_return_type]
4072
+
4073
+ # auth_names
4074
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
4075
+
4076
+ new_options = opts.merge(
4077
+ :operation => :"ChartsApi.put_api_charts_by_chart_id_tags",
4078
+ :header_params => header_params,
4079
+ :query_params => query_params,
4080
+ :form_params => form_params,
4081
+ :body => post_body,
4082
+ :auth_names => auth_names,
4083
+ :return_type => return_type
4084
+ )
4085
+
4086
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
4087
+ if @api_client.config.debugging
4088
+ @api_client.config.logger.debug "API called: ChartsApi#put_api_charts_by_chart_id_tags\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4089
+ end
4090
+ return data, status_code, headers
4091
+ end
4092
+
4093
+ # Attach a rendered thumbnail to a version
4094
+ # Stores the preview the designer renders at publish time (offscreen render of the stage, ~640px, WebP). Written through the map-asset storage (`MAP_ASSET_STORAGE_DIR` / R2) when configured, otherwise kept inline. Set once: `409 ERR_THUMBNAIL_EXISTS` when the version already has one (version thumbnails are immutable). A version still showing the server placeholder (published through the API, or a baseline) accepts a render at any time — the designer attaches one when it shows that published map. For a chart published before version history, attaching to version 1 first records its published state as the baseline version. Magic bytes must match the declared type (`400 ERR_THUMBNAIL_INVALID`).
4095
+ # @param chart_id [String]
4096
+ # @param version [Float] Version number (1-based).
4097
+ # @param put_api_charts_by_chart_id_versions_by_version_thumbnail_request [PutApiChartsByChartIdVersionsByVersionThumbnailRequest]
4098
+ # @param [Hash] opts the optional parameters
4099
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
4100
+ # @return [nil]
4101
+ def put_api_charts_by_chart_id_versions_by_version_thumbnail(chart_id, version, put_api_charts_by_chart_id_versions_by_version_thumbnail_request, opts = {})
4102
+ put_api_charts_by_chart_id_versions_by_version_thumbnail_with_http_info(chart_id, version, put_api_charts_by_chart_id_versions_by_version_thumbnail_request, opts)
4103
+ nil
4104
+ end
4105
+
4106
+ # Attach a rendered thumbnail to a version
4107
+ # Stores the preview the designer renders at publish time (offscreen render of the stage, ~640px, WebP). Written through the map-asset storage (&#x60;MAP_ASSET_STORAGE_DIR&#x60; / R2) when configured, otherwise kept inline. Set once: &#x60;409 ERR_THUMBNAIL_EXISTS&#x60; when the version already has one (version thumbnails are immutable). A version still showing the server placeholder (published through the API, or a baseline) accepts a render at any time — the designer attaches one when it shows that published map. For a chart published before version history, attaching to version 1 first records its published state as the baseline version. Magic bytes must match the declared type (&#x60;400 ERR_THUMBNAIL_INVALID&#x60;).
4108
+ # @param chart_id [String]
4109
+ # @param version [Float] Version number (1-based).
4110
+ # @param put_api_charts_by_chart_id_versions_by_version_thumbnail_request [PutApiChartsByChartIdVersionsByVersionThumbnailRequest]
4111
+ # @param [Hash] opts the optional parameters
4112
+ # @option opts [String] :idempotency_key Required on transactional routes. Reuse the same key for every retry of one logical operation; the API replays the stored outcome.
4113
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
4114
+ def put_api_charts_by_chart_id_versions_by_version_thumbnail_with_http_info(chart_id, version, put_api_charts_by_chart_id_versions_by_version_thumbnail_request, opts = {})
4115
+ if @api_client.config.debugging
4116
+ @api_client.config.logger.debug 'Calling API: ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail ...'
4117
+ end
4118
+ # verify the required parameter 'chart_id' is set
4119
+ if @api_client.config.client_side_validation && chart_id.nil?
4120
+ fail ArgumentError, "Missing the required parameter 'chart_id' when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail"
4121
+ end
4122
+ pattern = Regexp.new(/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/)
4123
+ if @api_client.config.client_side_validation && chart_id !~ pattern
4124
+ fail ArgumentError, "invalid value for 'chart_id' when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail, must conform to the pattern #{pattern}."
4125
+ end
4126
+
4127
+ # verify the required parameter 'version' is set
4128
+ if @api_client.config.client_side_validation && version.nil?
4129
+ fail ArgumentError, "Missing the required parameter 'version' when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail"
4130
+ end
4131
+ if @api_client.config.client_side_validation && version > 2147483647
4132
+ fail ArgumentError, 'invalid value for "version" when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail, must be smaller than or equal to 2147483647.'
4133
+ end
4134
+
4135
+ if @api_client.config.client_side_validation && version < 1
4136
+ fail ArgumentError, 'invalid value for "version" when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail, must be greater than or equal to 1.'
4137
+ end
4138
+
4139
+ # verify the required parameter 'put_api_charts_by_chart_id_versions_by_version_thumbnail_request' is set
4140
+ if @api_client.config.client_side_validation && put_api_charts_by_chart_id_versions_by_version_thumbnail_request.nil?
4141
+ fail ArgumentError, "Missing the required parameter 'put_api_charts_by_chart_id_versions_by_version_thumbnail_request' when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail"
4142
+ end
4143
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length > 255
4144
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail, the character length must be smaller than or equal to 255.'
4145
+ end
4146
+
4147
+ if @api_client.config.client_side_validation && !opts[:'idempotency_key'].nil? && opts[:'idempotency_key'].to_s.length < 1
4148
+ fail ArgumentError, 'invalid value for "opts[:"idempotency_key"]" when calling ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail, the character length must be great than or equal to 1.'
4149
+ end
4150
+
4151
+ # resource path
4152
+ local_var_path = '/api/charts/{chartId}/versions/{version}/thumbnail'.sub('{' + 'chartId' + '}', CGI.escape(chart_id.to_s)).sub('{' + 'version' + '}', CGI.escape(version.to_s))
4153
+
4154
+ # query parameters
4155
+ query_params = opts[:query_params] || {}
4156
+
4157
+ # header parameters
4158
+ header_params = opts[:header_params] || {}
4159
+ # HTTP header 'Content-Type'
4160
+ content_type = @api_client.select_header_content_type(['application/json', 'multipart/form-data', 'text/plain'])
4161
+ if !content_type.nil?
4162
+ header_params['Content-Type'] = content_type
4163
+ end
4164
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
4165
+
4166
+ # form parameters
4167
+ form_params = opts[:form_params] || {}
4168
+
4169
+ # http body (model)
4170
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(put_api_charts_by_chart_id_versions_by_version_thumbnail_request)
4171
+
4172
+ # return_type
4173
+ return_type = opts[:debug_return_type]
4174
+
4175
+ # auth_names
4176
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth', 'BearerAuth']
4177
+
4178
+ new_options = opts.merge(
4179
+ :operation => :"ChartsApi.put_api_charts_by_chart_id_versions_by_version_thumbnail",
4180
+ :header_params => header_params,
4181
+ :query_params => query_params,
4182
+ :form_params => form_params,
4183
+ :body => post_body,
4184
+ :auth_names => auth_names,
4185
+ :return_type => return_type
4186
+ )
4187
+
4188
+ data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
4189
+ if @api_client.config.debugging
4190
+ @api_client.config.logger.debug "API called: ChartsApi#put_api_charts_by_chart_id_versions_by_version_thumbnail\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4191
+ end
4192
+ return data, status_code, headers
4193
+ end
4194
+ end
4195
+ end