instana-client 1.0.0__py3-none-any.whl → 1.0.1__py3-none-any.whl

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 (586) hide show
  1. instana_client/__init__.py +1754 -514
  2. instana_client/api/__init__.py +85 -1
  3. instana_client/api/action_catalog_api.py +329 -6
  4. instana_client/api/action_history_api.py +54 -2
  5. instana_client/api/ai_management_api.py +1973 -0
  6. instana_client/api/apdex_report_api.py +2 -2
  7. instana_client/api/apdex_settings_api.py +8 -9
  8. instana_client/api/api_token_api.py +17 -17
  9. instana_client/api/application_alert_configuration_api.py +79 -66
  10. instana_client/api/application_analyze_api.py +20 -282
  11. instana_client/api/application_catalog_api.py +11 -11
  12. instana_client/api/application_metrics_api.py +14 -14
  13. instana_client/api/application_resources_api.py +21 -21
  14. instana_client/api/application_settings_api.py +134 -104
  15. instana_client/api/application_topology_api.py +11 -2
  16. instana_client/api/audit_log_api.py +2 -2
  17. instana_client/api/authentication_api.py +2 -2
  18. instana_client/api/business_monitoring_api.py +2 -2
  19. instana_client/api/custom_dashboards_api.py +29 -19
  20. instana_client/api/custom_entities_api.py +1673 -0
  21. instana_client/api/end_user_monitoring_api.py +310 -0
  22. instana_client/api/event_settings_api.py +1251 -653
  23. instana_client/api/events_api.py +11 -26
  24. instana_client/api/global_application_alert_configuration_api.py +53 -56
  25. instana_client/api/groups_api.py +1121 -62
  26. instana_client/api/health_api.py +8 -5
  27. instana_client/api/host_agent_api.py +274 -8
  28. instana_client/api/infrastructure_alert_configuration_api.py +2 -2
  29. instana_client/api/infrastructure_analyze_api.py +14 -14
  30. instana_client/api/infrastructure_catalog_api.py +44 -13
  31. instana_client/api/infrastructure_metrics_api.py +5 -5
  32. instana_client/api/infrastructure_resources_api.py +11 -11
  33. instana_client/api/infrastructure_topology_api.py +2 -2
  34. instana_client/api/log_alert_configuration_api.py +44 -30
  35. instana_client/api/logging_analyze_api.py +343 -0
  36. instana_client/api/maintenance_configuration_api.py +32 -20
  37. instana_client/api/mobile_app_analyze_api.py +2 -2
  38. instana_client/api/mobile_app_catalog_api.py +8 -2
  39. instana_client/api/mobile_app_configuration_api.py +3058 -334
  40. instana_client/api/mobile_app_metrics_api.py +3 -6
  41. instana_client/api/policies_api.py +14 -11
  42. instana_client/api/releases_api.py +8 -11
  43. instana_client/api/roles_api.py +1394 -0
  44. instana_client/api/service_levels_alert_configuration_api.py +2 -2
  45. instana_client/api/service_levels_objective_slo_configurations_api.py +160 -89
  46. instana_client/api/service_levels_objective_slo_report_api.py +38 -2
  47. instana_client/api/session_settings_api.py +2 -2
  48. instana_client/api/sli_report_api.py +2 -2
  49. instana_client/api/sli_settings_api.py +5 -8
  50. instana_client/api/slo_correction_configurations_api.py +1528 -0
  51. instana_client/api/slo_correction_windows_api.py +392 -0
  52. instana_client/api/synthetic_alert_configuration_api.py +53 -56
  53. instana_client/api/synthetic_calls_api.py +20 -9
  54. instana_client/api/synthetic_catalog_api.py +20 -2
  55. instana_client/api/synthetic_metrics_api.py +5 -5
  56. instana_client/api/synthetic_settings_api.py +1238 -369
  57. instana_client/api/synthetic_test_playback_results_api.py +307 -20
  58. instana_client/api/teams_api.py +1380 -0
  59. instana_client/api/usage_api.py +2 -2
  60. instana_client/api/user_api.py +302 -28
  61. instana_client/api/website_analyze_api.py +8 -8
  62. instana_client/api/website_catalog_api.py +11 -8
  63. instana_client/api/website_configuration_api.py +1801 -336
  64. instana_client/api/website_metrics_api.py +3 -3
  65. instana_client/api_client.py +11 -4
  66. instana_client/configuration.py +14 -7
  67. instana_client/exceptions.py +2 -2
  68. instana_client/models/__init__.py +585 -9
  69. instana_client/models/abstract_integration.py +11 -5
  70. instana_client/models/abstract_rule.py +2 -2
  71. instana_client/models/access_log_entry.py +12 -7
  72. instana_client/models/access_log_response.py +2 -2
  73. instana_client/models/access_rule.py +2 -2
  74. instana_client/models/action.py +2 -2
  75. instana_client/models/action_configuration.py +2 -2
  76. instana_client/models/action_instance.py +2 -2
  77. instana_client/models/action_instance_metadata_entry.py +2 -2
  78. instana_client/models/action_instance_parameter.py +2 -2
  79. instana_client/models/action_instance_request.py +2 -2
  80. instana_client/models/action_instance_request_parameters.py +2 -2
  81. instana_client/models/action_match.py +19 -6
  82. instana_client/models/action_search_space.py +2 -2
  83. instana_client/models/adaptive_baseline.py +3 -3
  84. instana_client/models/adaptive_threshold_rule.py +3 -3
  85. instana_client/models/addition.py +97 -0
  86. instana_client/models/adjusted_timeframe.py +2 -2
  87. instana_client/models/agent_configuration_update.py +2 -2
  88. instana_client/models/alerting_configuration.py +2 -2
  89. instana_client/models/alerting_configuration_with_last_updated.py +2 -2
  90. instana_client/models/alerting_time_window.py +2 -2
  91. instana_client/models/apdex_configuration.py +2 -2
  92. instana_client/models/apdex_configuration_input.py +2 -2
  93. instana_client/models/apdex_entity.py +2 -2
  94. instana_client/models/apdex_report.py +2 -2
  95. instana_client/models/api_create_group.py +2 -2
  96. instana_client/models/api_create_role.py +101 -0
  97. instana_client/models/api_group.py +2 -2
  98. instana_client/models/api_member.py +5 -3
  99. instana_client/models/api_permission_set.py +12 -3
  100. instana_client/models/api_restricted_application_filter.py +2 -2
  101. instana_client/models/api_role.py +102 -0
  102. instana_client/models/api_tag.py +91 -0
  103. instana_client/models/api_team.py +113 -0
  104. instana_client/models/api_team_info.py +89 -0
  105. instana_client/models/api_team_member.py +102 -0
  106. instana_client/models/api_team_role.py +92 -0
  107. instana_client/models/api_team_scope.py +131 -0
  108. instana_client/models/api_token.py +29 -5
  109. instana_client/models/app_data_metric_configuration.py +2 -2
  110. instana_client/models/application.py +2 -2
  111. instana_client/models/application_alert_config.py +2 -2
  112. instana_client/models/application_alert_config_with_metadata.py +2 -2
  113. instana_client/models/application_alert_rule.py +2 -2
  114. instana_client/models/application_apdex_entity.py +2 -2
  115. instana_client/models/application_config.py +2 -2
  116. instana_client/models/application_event_result.py +5 -7
  117. instana_client/models/application_item.py +2 -2
  118. instana_client/models/application_metric_result.py +2 -2
  119. instana_client/models/application_node.py +2 -2
  120. instana_client/models/application_result.py +2 -2
  121. instana_client/models/application_scope.py +4 -4
  122. instana_client/models/application_scope_with_metadata.py +6 -6
  123. instana_client/models/application_sli_entity.py +2 -2
  124. instana_client/models/application_slo_entity.py +2 -2
  125. instana_client/models/application_time_threshold.py +2 -2
  126. instana_client/models/arithmetic_configuration.py +121 -0
  127. instana_client/models/arithmetic_operand.py +154 -0
  128. instana_client/models/arithmetic_operation.py +128 -0
  129. instana_client/models/audit_log_entry.py +2 -2
  130. instana_client/models/audit_log_ui_response.py +2 -2
  131. instana_client/models/author.py +2 -2
  132. instana_client/models/availability_blueprint_indicator.py +5 -16
  133. instana_client/models/availability_sli_entity.py +2 -2
  134. instana_client/models/available_metrics.py +2 -2
  135. instana_client/models/available_plugins.py +2 -2
  136. instana_client/models/backend_trace_reference.py +2 -2
  137. instana_client/models/bidirectional_ms_teams_app_integration.py +108 -0
  138. instana_client/models/bidirectional_slack_app_integration.py +102 -0
  139. instana_client/models/binary_operator_dto.py +2 -2
  140. instana_client/models/browser_script_configuration.py +5 -3
  141. instana_client/models/built_in_event_specification.py +2 -2
  142. instana_client/models/built_in_event_specification_with_last_updated.py +2 -2
  143. instana_client/models/business_activity.py +5 -3
  144. instana_client/models/business_perspective_config.py +2 -2
  145. instana_client/models/call_groups_item.py +2 -2
  146. instana_client/models/call_groups_result.py +2 -2
  147. instana_client/models/call_relation.py +2 -2
  148. instana_client/models/change_summary.py +2 -2
  149. instana_client/models/cloudfoundry_physical_context.py +4 -4
  150. instana_client/models/condition.py +2 -2
  151. instana_client/models/config_version.py +2 -2
  152. instana_client/models/correction.py +105 -0
  153. instana_client/models/correction_configuration.py +109 -0
  154. instana_client/models/correction_scheduling.py +104 -0
  155. instana_client/models/correction_window.py +95 -0
  156. instana_client/models/crash_mobile_app_alert_rule.py +2 -2
  157. instana_client/models/create_website_request_inner.py +90 -0
  158. instana_client/models/cursor_paginated_business_activity_item.py +2 -2
  159. instana_client/models/cursor_pagination.py +2 -2
  160. instana_client/models/cursor_pagination_infra_explore_cursor.py +2 -2
  161. instana_client/models/custom_blueprint_indicator.py +8 -4
  162. instana_client/models/custom_dashboard.py +2 -2
  163. instana_client/models/custom_dashboard_preview.py +2 -2
  164. instana_client/models/custom_dashboard_with_user_specific_information.py +115 -0
  165. instana_client/models/custom_dependency.py +116 -0
  166. instana_client/models/custom_email_subject_prefix.py +2 -2
  167. instana_client/models/custom_entity_model.py +126 -0
  168. instana_client/models/custom_entity_with_metadata.py +98 -0
  169. instana_client/models/custom_event_mobile_app_alert_rule.py +2 -2
  170. instana_client/models/custom_event_specification.py +9 -3
  171. instana_client/models/custom_event_specification_with_last_updated.py +9 -3
  172. instana_client/models/custom_event_website_alert_rule.py +2 -2
  173. instana_client/models/custom_metric.py +134 -0
  174. instana_client/models/custom_payload_configuration.py +2 -2
  175. instana_client/models/custom_payload_field.py +2 -2
  176. instana_client/models/custom_payload_with_last_updated.py +2 -2
  177. instana_client/models/custom_payload_with_version.py +101 -0
  178. instana_client/models/dashboard_api_token.py +2 -2
  179. instana_client/models/database_integration.py +2 -2
  180. instana_client/models/deprecated_tag_filter.py +4 -4
  181. instana_client/models/division.py +97 -0
  182. instana_client/models/dns_configuration.py +146 -0
  183. instana_client/models/dns_filter_query_time.py +99 -0
  184. instana_client/models/dns_filter_target_value.py +106 -0
  185. instana_client/models/duration.py +2 -2
  186. instana_client/models/dynamic_field.py +2 -2
  187. instana_client/models/dynamic_field_value.py +2 -2
  188. instana_client/models/dynamic_parameter.py +2 -2
  189. instana_client/models/edit_user.py +2 -2
  190. instana_client/models/email_integration.py +2 -2
  191. instana_client/models/empty_configuration.py +2 -2
  192. instana_client/models/endpoint.py +4 -4
  193. instana_client/models/endpoint_config.py +2 -2
  194. instana_client/models/endpoint_event_result.py +7 -9
  195. instana_client/models/endpoint_item.py +2 -2
  196. instana_client/models/endpoint_metric_result.py +2 -2
  197. instana_client/models/endpoint_node.py +2 -2
  198. instana_client/models/endpoint_result.py +3 -3
  199. instana_client/models/endpoint_simple.py +3 -3
  200. instana_client/models/entity_count_rule.py +2 -2
  201. instana_client/models/entity_count_verification_rule.py +3 -3
  202. instana_client/models/entity_health_info.py +2 -2
  203. instana_client/models/entity_id.py +2 -2
  204. instana_client/models/entity_verification_rule.py +3 -3
  205. instana_client/models/error_budget_alert_rule.py +5 -5
  206. instana_client/models/errors_application_alert_rule.py +2 -2
  207. instana_client/models/event.py +7 -3
  208. instana_client/models/event_filtering_configuration.py +2 -2
  209. instana_client/models/event_result.py +2 -2
  210. instana_client/models/event_specification_info.py +2 -2
  211. instana_client/models/extended_service.py +2 -2
  212. instana_client/models/failure_synthetic_alert_rule.py +2 -2
  213. instana_client/models/fixed_http_path_segment_matching_rule.py +2 -2
  214. instana_client/models/fixed_time_window.py +4 -3
  215. instana_client/models/generic_infra_alert_rule.py +12 -4
  216. instana_client/models/geo_location_configuration.py +2 -2
  217. instana_client/models/geo_mapping_rule.py +2 -2
  218. instana_client/models/geo_subdivision.py +2 -2
  219. instana_client/models/get_activities.py +2 -2
  220. instana_client/models/get_application_metrics.py +2 -2
  221. instana_client/models/get_applications.py +2 -2
  222. instana_client/models/get_available_metrics_query.py +2 -2
  223. instana_client/models/get_available_plugins_query.py +2 -2
  224. instana_client/models/get_call_groups.py +2 -2
  225. instana_client/models/get_combined_metrics.py +2 -2
  226. instana_client/models/get_dynamic_parameter_values.py +2 -2
  227. instana_client/models/get_endpoints.py +2 -2
  228. instana_client/models/get_infrastructure_groups_query.py +2 -2
  229. instana_client/models/get_infrastructure_query.py +2 -2
  230. instana_client/models/get_metrics_result.py +2 -2
  231. instana_client/models/get_mobile_app_beacon_groups.py +2 -2
  232. instana_client/models/get_mobile_app_beacons.py +2 -2
  233. instana_client/models/get_mobile_app_metrics.py +2 -2
  234. instana_client/models/get_mobile_app_metrics_v2.py +2 -2
  235. instana_client/models/get_payload_keys_result.py +2 -2
  236. instana_client/models/get_services.py +2 -2
  237. instana_client/models/get_snapshots_query.py +2 -2
  238. instana_client/models/get_test_result.py +2 -2
  239. instana_client/models/get_test_result_analytic.py +126 -0
  240. instana_client/models/get_test_result_base.py +2 -2
  241. instana_client/models/get_test_result_list.py +2 -2
  242. instana_client/models/get_test_summary_result.py +2 -2
  243. instana_client/models/get_trace_download_result_item.py +3 -3
  244. instana_client/models/get_trace_groups.py +2 -2
  245. instana_client/models/get_traces.py +4 -4
  246. instana_client/models/get_website_beacon_groups.py +2 -2
  247. instana_client/models/get_website_beacons.py +2 -2
  248. instana_client/models/get_website_metrics.py +2 -2
  249. instana_client/models/get_website_metrics_v2.py +2 -2
  250. instana_client/models/global_application_alert_config_with_metadata.py +2 -2
  251. instana_client/models/global_applications_alert_config.py +2 -2
  252. instana_client/models/google_chat_integration.py +2 -2
  253. instana_client/models/graph_edge.py +2 -2
  254. instana_client/models/graph_node.py +2 -2
  255. instana_client/models/group.py +2 -2
  256. instana_client/models/group_by_tag.py +2 -2
  257. instana_client/models/group_mapping.py +5 -3
  258. instana_client/models/group_mapping_overview.py +96 -0
  259. instana_client/models/health_state.py +2 -2
  260. instana_client/models/historic_baseline.py +3 -3
  261. instana_client/models/host_availability_rule.py +2 -2
  262. instana_client/models/http_action_configuration.py +2 -2
  263. instana_client/models/http_endpoint_config.py +2 -2
  264. instana_client/models/http_endpoint_rule.py +2 -2
  265. instana_client/models/http_path_segment_matching_rule.py +2 -2
  266. instana_client/models/http_script_configuration.py +5 -3
  267. instana_client/models/hyper_param.py +2 -2
  268. instana_client/models/identity_provider_patch.py +2 -2
  269. instana_client/models/impacted_beacon_info.py +96 -0
  270. instana_client/models/infra_alert_config.py +8 -6
  271. instana_client/models/infra_alert_config_with_metadata.py +7 -5
  272. instana_client/models/infra_alert_rule.py +9 -3
  273. instana_client/models/infra_event_result.py +6 -8
  274. instana_client/models/infra_metric_configuration.py +103 -80
  275. instana_client/models/infra_slo_entity.py +95 -0
  276. instana_client/models/infra_time_threshold.py +2 -2
  277. instana_client/models/infrastructure_entities_result.py +2 -2
  278. instana_client/models/infrastructure_group.py +5 -3
  279. instana_client/models/infrastructure_groups_result.py +2 -2
  280. instana_client/models/infrastructure_item.py +2 -2
  281. instana_client/models/infrastructure_metric_result.py +2 -2
  282. instana_client/models/instana_version_info.py +2 -2
  283. instana_client/models/integration_overview.py +14 -4
  284. instana_client/models/invitation.py +2 -2
  285. instana_client/models/invitation_response.py +2 -2
  286. instana_client/models/invitation_result.py +2 -2
  287. instana_client/models/ip_masking_configuration.py +2 -2
  288. instana_client/models/js_stack_trace_line.py +2 -2
  289. instana_client/models/kubernetes_physical_context.py +3 -3
  290. instana_client/models/latency_blueprint_indicator.py +5 -16
  291. instana_client/models/llm_egress_gateway.py +125 -0
  292. instana_client/models/location_status.py +2 -2
  293. instana_client/models/log_alert_config.py +8 -6
  294. instana_client/models/log_alert_config_with_metadata.py +8 -6
  295. instana_client/models/log_alert_rule.py +2 -2
  296. instana_client/models/log_count_alert_rule.py +2 -2
  297. instana_client/models/log_entry_actor.py +2 -2
  298. instana_client/models/log_event_result.py +5 -7
  299. instana_client/models/log_time_threshold.py +2 -2
  300. instana_client/models/log_volume_group.py +91 -0
  301. instana_client/models/log_volume_usage_item.py +101 -0
  302. instana_client/models/log_volume_usage_result.py +96 -0
  303. instana_client/models/logs_application_alert_rule.py +4 -4
  304. instana_client/models/maintenance_config.py +2 -2
  305. instana_client/models/maintenance_config_scheduling.py +2 -2
  306. instana_client/models/maintenance_config_v2.py +2 -2
  307. instana_client/models/maintenance_config_v2_with_state_and_occurrence.py +2 -2
  308. instana_client/models/maintenance_config_with_last_updated.py +2 -2
  309. instana_client/models/maintenance_window.py +2 -2
  310. instana_client/models/manual_alerting_channel_configuration.py +2 -2
  311. instana_client/models/manual_close_info.py +2 -2
  312. instana_client/models/manual_service_config.py +2 -2
  313. instana_client/models/match_all_http_path_segment_matching_rule.py +2 -2
  314. instana_client/models/match_expression_dto.py +3 -3
  315. instana_client/models/meta_data.py +2 -2
  316. instana_client/models/metric_api_result.py +2 -2
  317. instana_client/models/metric_config.py +2 -2
  318. instana_client/models/metric_configuration.py +3 -3
  319. instana_client/models/metric_description.py +2 -2
  320. instana_client/models/metric_instance.py +2 -2
  321. instana_client/models/metric_item.py +2 -2
  322. instana_client/models/metric_metadata.py +4 -4
  323. instana_client/models/metric_pattern.py +2 -2
  324. instana_client/models/metric_query.py +128 -0
  325. instana_client/models/metrics_result.py +2 -2
  326. instana_client/models/metrics_result_item.py +5 -3
  327. instana_client/models/metrics_test_result_item.py +2 -2
  328. instana_client/models/mobile_app.py +2 -2
  329. instana_client/models/mobile_app_alert_config.py +2 -2
  330. instana_client/models/mobile_app_alert_rule.py +8 -5
  331. instana_client/models/mobile_app_beacon_groups_item.py +2 -2
  332. instana_client/models/mobile_app_beacon_groups_result.py +2 -2
  333. instana_client/models/mobile_app_beacon_result.py +2 -2
  334. instana_client/models/mobile_app_beacon_tag_group.py +2 -2
  335. instana_client/models/mobile_app_beacons_item.py +11 -5
  336. instana_client/models/mobile_app_event_result.py +5 -7
  337. instana_client/models/mobile_app_metric_result.py +2 -2
  338. instana_client/models/mobile_app_monitoring_beacon.py +22 -4
  339. instana_client/models/mobile_app_monitoring_metric_description.py +5 -3
  340. instana_client/models/mobile_app_monitoring_metrics_configuration.py +2 -2
  341. instana_client/models/mobile_app_time_threshold.py +2 -2
  342. instana_client/models/model_field.py +2 -2
  343. instana_client/models/monitored_entities_stats.py +92 -0
  344. instana_client/models/monitoring_state.py +11 -3
  345. instana_client/models/multiple_scripts_configuration.py +2 -2
  346. instana_client/models/multiplication.py +97 -0
  347. instana_client/models/nested_operation.py +128 -0
  348. instana_client/models/new_application_config.py +2 -2
  349. instana_client/models/new_business_perspective_config.py +2 -2
  350. instana_client/models/new_manual_service_config.py +2 -2
  351. instana_client/models/o_auth_config.py +107 -0
  352. instana_client/models/o_auth_integration.py +98 -0
  353. instana_client/models/o_auth_token.py +121 -0
  354. instana_client/models/occurrence.py +2 -2
  355. instana_client/models/office365_integration.py +2 -2
  356. instana_client/models/one_time_maintenance_window.py +2 -2
  357. instana_client/models/opsgenie_integration.py +2 -2
  358. instana_client/models/order.py +2 -2
  359. instana_client/models/pagerduty_integration.py +2 -2
  360. instana_client/models/paginated_result.py +2 -2
  361. instana_client/models/pagination.py +2 -2
  362. instana_client/models/parameter.py +2 -2
  363. instana_client/models/parameter_value.py +2 -2
  364. instana_client/models/path_parameter_http_path_segment_matching_rule.py +2 -2
  365. instana_client/models/physical_context.py +3 -3
  366. instana_client/models/plugin_result.py +2 -2
  367. instana_client/models/policy.py +2 -2
  368. instana_client/models/policy_runnable.py +2 -2
  369. instana_client/models/policy_scheduling.py +91 -0
  370. instana_client/models/post_mobile_app_source_map_config_request.py +88 -0
  371. instana_client/models/post_snapshots_result.py +2 -2
  372. instana_client/models/problem.py +2 -2
  373. instana_client/models/prometheus_webhook_integration.py +2 -2
  374. instana_client/models/recurrent_maintenance_window.py +2 -2
  375. instana_client/models/release.py +6 -6
  376. instana_client/models/release_scope.py +2 -2
  377. instana_client/models/release_with_metadata.py +8 -8
  378. instana_client/models/retention_period.py +101 -0
  379. instana_client/models/rolling_time_window.py +4 -3
  380. instana_client/models/rule_input.py +2 -2
  381. instana_client/models/rule_with_threshold_application_alert_rule.py +2 -2
  382. instana_client/models/rule_with_threshold_infra_alert_rule.py +2 -2
  383. instana_client/models/rule_with_threshold_log_alert_rule.py +2 -2
  384. instana_client/models/rule_with_threshold_mobile_app_alert_rule.py +2 -2
  385. instana_client/models/rule_with_threshold_website_alert_rule.py +2 -2
  386. instana_client/models/run_configuration.py +2 -2
  387. instana_client/models/salesforce_integration.py +2 -2
  388. instana_client/models/saturation_blueprint_indicator.py +97 -0
  389. instana_client/models/scope_binding.py +2 -2
  390. instana_client/models/search_field_result.py +2 -2
  391. instana_client/models/service.py +3 -3
  392. instana_client/models/service_config.py +2 -2
  393. instana_client/models/service_event_result.py +5 -7
  394. instana_client/models/service_item.py +2 -2
  395. instana_client/models/service_level_indicator.py +10 -7
  396. instana_client/models/service_level_objective_alert_rule.py +2 -2
  397. instana_client/models/service_level_objective_configuration.py +3 -3
  398. instana_client/models/service_levels_alert_config.py +15 -5
  399. instana_client/models/service_levels_alert_rule.py +2 -2
  400. instana_client/models/service_levels_burn_rate_config.py +115 -0
  401. instana_client/models/service_levels_burn_rate_time_windows.py +2 -2
  402. instana_client/models/service_levels_static_threshold_config.py +100 -0
  403. instana_client/models/service_levels_time_threshold.py +5 -5
  404. instana_client/models/service_levelse_alert_config_with_metadata.py +15 -5
  405. instana_client/models/service_map.py +2 -2
  406. instana_client/models/service_map_connection.py +2 -2
  407. instana_client/models/service_matching_rule.py +2 -2
  408. instana_client/models/service_metric_result.py +2 -2
  409. instana_client/models/service_node.py +2 -2
  410. instana_client/models/service_now_enhanced_integration.py +2 -2
  411. instana_client/models/service_now_integration.py +2 -2
  412. instana_client/models/service_result.py +3 -3
  413. instana_client/models/service_scope.py +4 -4
  414. instana_client/models/service_scope_with_metadata.py +5 -5
  415. instana_client/models/service_scoped_to.py +3 -3
  416. instana_client/models/service_scoped_to_with_metadata.py +4 -4
  417. instana_client/models/service_simple.py +2 -2
  418. instana_client/models/session_settings.py +4 -4
  419. instana_client/models/simple_metric_configuration.py +121 -0
  420. instana_client/models/single_value.py +128 -0
  421. instana_client/models/slack_integration.py +2 -2
  422. instana_client/models/sli_configuration.py +2 -2
  423. instana_client/models/sli_configuration_with_last_updated.py +2 -2
  424. instana_client/models/sli_entity.py +2 -2
  425. instana_client/models/sli_report.py +2 -2
  426. instana_client/models/slo_config_with_rbac_tag.py +128 -0
  427. instana_client/models/slo_entity.py +8 -5
  428. instana_client/models/slo_report.py +2 -2
  429. instana_client/models/slowness_application_alert_rule.py +2 -2
  430. instana_client/models/slowness_mobile_app_alert_rule.py +90 -0
  431. instana_client/models/slowness_website_alert_rule.py +2 -2
  432. instana_client/models/snapshot_item.py +2 -2
  433. instana_client/models/snapshot_preview.py +7 -7
  434. instana_client/models/snapshot_result.py +2 -2
  435. instana_client/models/software_user.py +2 -2
  436. instana_client/models/software_version.py +2 -2
  437. instana_client/models/source_map_file_blob.py +2 -2
  438. instana_client/models/source_map_file_meta.py +2 -2
  439. instana_client/models/source_map_upload_config.py +2 -2
  440. instana_client/models/source_map_upload_configs.py +106 -0
  441. instana_client/models/span_excerpt.py +12 -12
  442. instana_client/models/span_relation.py +3 -3
  443. instana_client/models/specific_js_errors_website_alert_rule.py +4 -4
  444. instana_client/models/splunk_integration.py +2 -2
  445. instana_client/models/ssl_certificate_configuration.py +17 -5
  446. instana_client/models/ssl_certificate_validation.py +99 -0
  447. instana_client/models/stack_trace_item.py +7 -7
  448. instana_client/models/stack_trace_line.py +2 -2
  449. instana_client/models/static_baseline_threshold_rule.py +3 -3
  450. instana_client/models/static_string_field.py +2 -2
  451. instana_client/models/static_threshold.py +2 -2
  452. instana_client/models/static_threshold_rule.py +2 -2
  453. instana_client/models/status_code_application_alert_rule.py +2 -2
  454. instana_client/models/status_code_mobile_app_alert_rule.py +4 -4
  455. instana_client/models/status_code_website_alert_rule.py +4 -4
  456. instana_client/models/subtraction.py +97 -0
  457. instana_client/models/synthetic_alert_config.py +2 -2
  458. instana_client/models/synthetic_alert_config_with_metadata.py +2 -2
  459. instana_client/models/synthetic_alert_rule.py +2 -2
  460. instana_client/models/synthetic_call_config.py +4 -4
  461. instana_client/models/synthetic_call_rule.py +6 -6
  462. instana_client/models/synthetic_call_with_defaults_config.py +4 -4
  463. instana_client/models/synthetic_configuration.py +93 -0
  464. instana_client/models/synthetic_credential.py +23 -3
  465. instana_client/models/synthetic_datacenter.py +2 -2
  466. instana_client/models/synthetic_datacenter_configuration.py +2 -2
  467. instana_client/models/synthetic_geo_point.py +2 -2
  468. instana_client/models/synthetic_location.py +2 -2
  469. instana_client/models/synthetic_location_configuration.py +2 -2
  470. instana_client/models/synthetic_metric_configuration.py +2 -2
  471. instana_client/models/synthetic_metric_tag_group.py +2 -2
  472. instana_client/models/synthetic_playback_capabilities.py +17 -4
  473. instana_client/models/synthetic_slo_entity.py +7 -5
  474. instana_client/models/synthetic_test.py +27 -3
  475. instana_client/models/synthetic_test_cicd.py +96 -0
  476. instana_client/models/synthetic_test_cicd_customization.py +96 -0
  477. instana_client/models/synthetic_test_cicd_item.py +114 -0
  478. instana_client/models/synthetic_test_cicd_response.py +92 -0
  479. instana_client/models/synthetic_time_threshold.py +2 -2
  480. instana_client/models/synthetic_type_configuration.py +11 -11
  481. instana_client/models/synthetics_event_result.py +5 -7
  482. instana_client/models/system_rule.py +2 -2
  483. instana_client/models/system_rule_label.py +2 -2
  484. instana_client/models/tag.py +6 -6
  485. instana_client/models/tag_catalog.py +2 -2
  486. instana_client/models/tag_filter.py +4 -4
  487. instana_client/models/tag_filter_expression.py +2 -2
  488. instana_client/models/tag_filter_expression_element.py +2 -2
  489. instana_client/models/tag_matcher_dto.py +2 -2
  490. instana_client/models/tag_tree_level.py +2 -2
  491. instana_client/models/tag_tree_node.py +2 -2
  492. instana_client/models/tag_tree_tag.py +2 -2
  493. instana_client/models/test_common_properties.py +2 -2
  494. instana_client/models/test_last_error.py +90 -0
  495. instana_client/models/test_result.py +2 -2
  496. instana_client/models/test_result_common_properties.py +24 -3
  497. instana_client/models/test_result_detail_data.py +2 -2
  498. instana_client/models/test_result_item.py +2 -2
  499. instana_client/models/test_result_list_item.py +2 -2
  500. instana_client/models/test_result_list_result.py +2 -2
  501. instana_client/models/test_result_metadata.py +2 -2
  502. instana_client/models/test_result_subtransaction.py +2 -2
  503. instana_client/models/threshold.py +2 -2
  504. instana_client/models/threshold_config_rule.py +2 -2
  505. instana_client/models/threshold_rule.py +2 -2
  506. instana_client/models/throughput_application_alert_rule.py +2 -2
  507. instana_client/models/throughput_mobile_app_alert_rule.py +2 -2
  508. instana_client/models/throughput_website_alert_rule.py +2 -2
  509. instana_client/models/time_frame.py +2 -2
  510. instana_client/models/time_window.py +5 -4
  511. instana_client/models/topology.py +2 -2
  512. instana_client/models/trace.py +8 -8
  513. instana_client/models/trace_activity_tree_node_details.py +13 -13
  514. instana_client/models/trace_download_result.py +2 -2
  515. instana_client/models/trace_groups_item.py +2 -2
  516. instana_client/models/trace_groups_result.py +2 -2
  517. instana_client/models/trace_impact_application_time_threshold.py +2 -2
  518. instana_client/models/trace_item.py +2 -2
  519. instana_client/models/trace_result.py +2 -2
  520. instana_client/models/traffic_blueprint_indicator.py +3 -3
  521. instana_client/models/trigger.py +15 -7
  522. instana_client/models/type_configuration.py +2 -2
  523. instana_client/models/unsupported_http_path_segment_matching_rule.py +2 -2
  524. instana_client/models/updated_business_perspective_config.py +2 -2
  525. instana_client/models/usage_result.py +2 -2
  526. instana_client/models/usage_result_items.py +2 -2
  527. instana_client/models/user_basic_result.py +2 -2
  528. instana_client/models/user_impact_mobile_app_time_threshold.py +3 -3
  529. instana_client/models/user_impact_website_time_threshold.py +3 -3
  530. instana_client/models/user_result.py +2 -2
  531. instana_client/models/users_result.py +2 -2
  532. instana_client/models/validated_alerting_channel_input_info.py +4 -4
  533. instana_client/models/validated_alerting_configuration.py +2 -2
  534. instana_client/models/validated_maintenance_config_v2_with_state_and_occurrence.py +2 -2
  535. instana_client/models/validated_maintenance_config_with_status.py +2 -2
  536. instana_client/models/victor_ops_integration.py +2 -2
  537. instana_client/models/violations_in_period_application_time_threshold.py +2 -2
  538. instana_client/models/violations_in_period_mobile_app_time_threshold.py +2 -2
  539. instana_client/models/violations_in_period_website_time_threshold.py +2 -2
  540. instana_client/models/violations_in_sequence_application_time_threshold.py +2 -2
  541. instana_client/models/violations_in_sequence_infra_time_threshold.py +2 -2
  542. instana_client/models/violations_in_sequence_log_time_threshold.py +2 -2
  543. instana_client/models/violations_in_sequence_mobile_app_time_threshold.py +2 -2
  544. instana_client/models/violations_in_sequence_synthetic_time_threshold.py +2 -2
  545. instana_client/models/violations_in_sequence_website_time_threshold.py +2 -2
  546. instana_client/models/watson_ai_ops_webhook_integration.py +2 -2
  547. instana_client/models/webex_teams_webhook_integration.py +2 -2
  548. instana_client/models/webhook_integration.py +14 -4
  549. instana_client/models/webpage_action_configuration.py +2 -2
  550. instana_client/models/webpage_script_configuration.py +5 -3
  551. instana_client/models/website.py +2 -2
  552. instana_client/models/website_alert_config.py +2 -2
  553. instana_client/models/website_alert_config_with_metadata.py +2 -2
  554. instana_client/models/website_alert_rule.py +2 -2
  555. instana_client/models/website_apdex_entity.py +2 -2
  556. instana_client/models/website_beacon_groups_item.py +2 -2
  557. instana_client/models/website_beacon_groups_result.py +2 -2
  558. instana_client/models/website_beacon_result.py +2 -2
  559. instana_client/models/website_beacon_tag_group.py +2 -2
  560. instana_client/models/website_beacons_item.py +11 -5
  561. instana_client/models/website_event_based_sli_entity.py +2 -2
  562. instana_client/models/website_event_result.py +4 -6
  563. instana_client/models/website_metric_result.py +2 -2
  564. instana_client/models/website_monitoring_beacon.py +7 -3
  565. instana_client/models/website_monitoring_metric_description.py +2 -2
  566. instana_client/models/website_monitoring_metrics_configuration.py +2 -2
  567. instana_client/models/website_slo_entity.py +2 -2
  568. instana_client/models/website_time_based_sli_entity.py +2 -2
  569. instana_client/models/website_time_threshold.py +2 -2
  570. instana_client/models/widget.py +2 -2
  571. instana_client/models/with_metadata.py +2 -2
  572. instana_client/models/with_resolved_name.py +2 -2
  573. instana_client/models/z_chat_ops_integration.py +2 -2
  574. instana_client/rest.py +3 -2
  575. instana_client-1.0.1.dist-info/METADATA +1068 -0
  576. instana_client-1.0.1.dist-info/RECORD +581 -0
  577. {instana_client-1.0.0.dist-info → instana_client-1.0.1.dist-info}/WHEEL +1 -1
  578. instana_client/models/dns_action_configuration.py +0 -134
  579. instana_client/models/dns_action_filter_query_time.py +0 -99
  580. instana_client/models/dns_action_filter_target_value.py +0 -106
  581. instana_client/models/full_trace.py +0 -97
  582. instana_client/models/span.py +0 -156
  583. instana_client-1.0.0.dist-info/METADATA +0 -25
  584. instana_client-1.0.0.dist-info/RECORD +0 -515
  585. {instana_client-1.0.0.dist-info → instana_client-1.0.1.dist-info}/licenses/LICENSE +0 -0
  586. {instana_client-1.0.0.dist-info → instana_client-1.0.1.dist-info}/top_level.txt +0 -0
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -29,7 +29,7 @@ class TrafficBlueprintIndicator(ServiceLevelIndicator):
29
29
  """
30
30
  TrafficBlueprintIndicator
31
31
  """ # noqa: E501
32
- threshold: Optional[Union[Annotated[float, Field(strict=True, ge=0)], Annotated[int, Field(strict=True, ge=0)]]] = Field(default=None, description="Threshold Value for the Blueprint")
32
+ threshold: Optional[Union[Annotated[float, Field(strict=True, ge=0.0)], Annotated[int, Field(strict=True, ge=0)]]] = Field(default=None, description="Threshold Value for the Blueprint")
33
33
  traffic_type: StrictStr = Field(alias="trafficType")
34
34
  __properties: ClassVar[List[str]] = ["aggregation", "blueprint", "operator", "serviceLevelsMeasurement", "threshold", "type", "trafficType"]
35
35
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -20,6 +20,7 @@ import json
20
20
 
21
21
  from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
22
22
  from typing import Any, ClassVar, Dict, List, Optional
23
+ from instana_client.models.policy_scheduling import PolicyScheduling
23
24
  from typing import Optional, Set
24
25
  from typing_extensions import Self
25
26
 
@@ -27,16 +28,18 @@ class Trigger(BaseModel):
27
28
  """
28
29
  The trigger is the Instana event or Smart Alert that defines the initial conditions that must be met for the policy to apply on the actions in `typeConfiguration`.
29
30
  """ # noqa: E501
30
- id: StrictStr = Field(description="Trigger (Instana event or Smart Alert) identifier.")
31
+ description: Optional[StrictStr] = Field(default=None, description="A description for the trigger.")
32
+ id: Optional[StrictStr] = Field(default=None, description="Trigger (Instana event or Smart Alert) identifier.")
31
33
  name: Optional[StrictStr] = Field(default=None, description="A name of the trigger (name of Instana event or Smart Alert).")
32
- type: StrictStr = Field(description="Instana event or Smart Alert type. The type must be one of the enum values.")
33
- __properties: ClassVar[List[str]] = ["id", "name", "type"]
34
+ scheduling: Optional[PolicyScheduling] = None
35
+ type: StrictStr = Field(description="Instana event type, Smart Alert type, or 'schedule'. The type must be one of the enum values.")
36
+ __properties: ClassVar[List[str]] = ["description", "id", "name", "scheduling", "type"]
34
37
 
35
38
  @field_validator('type')
36
39
  def type_validate_enum(cls, value):
37
40
  """Validates the enum"""
38
- if value not in set(['customEvent', 'builtinEvent', 'applicationSmartAlert', 'globalApplicationSmartAlert', 'websiteSmartAlert', 'infraSmartAlert', 'mobileAppSmartAlert', 'syntheticsSmartAlert', 'logSmartAlert', 'sloSmartAlert']):
39
- raise ValueError("must be one of enum values ('customEvent', 'builtinEvent', 'applicationSmartAlert', 'globalApplicationSmartAlert', 'websiteSmartAlert', 'infraSmartAlert', 'mobileAppSmartAlert', 'syntheticsSmartAlert', 'logSmartAlert', 'sloSmartAlert')")
41
+ if value not in set(['customEvent', 'builtinEvent', 'applicationSmartAlert', 'globalApplicationSmartAlert', 'websiteSmartAlert', 'infraSmartAlert', 'mobileAppSmartAlert', 'syntheticsSmartAlert', 'logSmartAlert', 'sloSmartAlert', 'schedule']):
42
+ raise ValueError("must be one of enum values ('customEvent', 'builtinEvent', 'applicationSmartAlert', 'globalApplicationSmartAlert', 'websiteSmartAlert', 'infraSmartAlert', 'mobileAppSmartAlert', 'syntheticsSmartAlert', 'logSmartAlert', 'sloSmartAlert', 'schedule')")
40
43
  return value
41
44
 
42
45
  model_config = ConfigDict(
@@ -78,6 +81,9 @@ class Trigger(BaseModel):
78
81
  exclude=excluded_fields,
79
82
  exclude_none=True,
80
83
  )
84
+ # override the default output from pydantic by calling `to_dict()` of scheduling
85
+ if self.scheduling:
86
+ _dict['scheduling'] = self.scheduling.to_dict()
81
87
  return _dict
82
88
 
83
89
  @classmethod
@@ -90,8 +96,10 @@ class Trigger(BaseModel):
90
96
  return cls.model_validate(obj)
91
97
 
92
98
  _obj = cls.model_validate({
99
+ "description": obj.get("description"),
93
100
  "id": obj.get("id"),
94
101
  "name": obj.get("name"),
102
+ "scheduling": PolicyScheduling.from_dict(obj["scheduling"]) if obj.get("scheduling") is not None else None,
95
103
  "type": obj.get("type")
96
104
  })
97
105
  return _obj
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -30,7 +30,7 @@ class UserImpactMobileAppTimeThreshold(MobileAppTimeThreshold):
30
30
  UserImpactMobileAppTimeThreshold
31
31
  """ # noqa: E501
32
32
  impact_measurement_method: StrictStr = Field(alias="impactMeasurementMethod")
33
- user_percentage: Optional[Union[Annotated[float, Field(le=1, strict=True, gt=0)], Annotated[int, Field(le=1, strict=True, gt=0)]]] = Field(default=None, alias="userPercentage")
33
+ user_percentage: Optional[Union[Annotated[float, Field(le=1.0, strict=True, gt=0.0)], Annotated[int, Field(le=1, strict=True, gt=0)]]] = Field(default=None, alias="userPercentage")
34
34
  users: Optional[Annotated[int, Field(strict=True, ge=1)]] = None
35
35
  __properties: ClassVar[List[str]] = ["timeWindow", "type", "impactMeasurementMethod", "userPercentage", "users"]
36
36
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -30,7 +30,7 @@ class UserImpactWebsiteTimeThreshold(WebsiteTimeThreshold):
30
30
  UserImpactWebsiteTimeThreshold
31
31
  """ # noqa: E501
32
32
  impact_measurement_method: StrictStr = Field(alias="impactMeasurementMethod")
33
- user_percentage: Optional[Union[Annotated[float, Field(le=1, strict=True, gt=0)], Annotated[int, Field(le=1, strict=True, gt=0)]]] = Field(default=None, alias="userPercentage")
33
+ user_percentage: Optional[Union[Annotated[float, Field(le=1.0, strict=True, gt=0.0)], Annotated[int, Field(le=1, strict=True, gt=0)]]] = Field(default=None, alias="userPercentage")
34
34
  users: Optional[Annotated[int, Field(strict=True, ge=1)]] = None
35
35
  __properties: ClassVar[List[str]] = ["timeWindow", "type", "impactMeasurementMethod", "userPercentage", "users"]
36
36
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11
 
@@ -3,9 +3,9 @@
3
3
  """
4
4
  Instana REST API documentation
5
5
 
6
- Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
6
+ Documentation for INSTANA REST API
7
7
 
8
- The version of the OpenAPI document: 1.291.1002
8
+ The version of the OpenAPI document: 1.306.1368
9
9
  Contact: support@instana.com
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
11
11