oci 2.125.1__py3-none-any.whl → 2.125.3__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 (358) hide show
  1. oci/access_governance_cp/access_governance_cp_client.py +8 -8
  2. oci/adm/application_dependency_management_client.py +36 -36
  3. oci/ai_anomaly_detection/anomaly_detection_client.py +36 -36
  4. oci/ai_document/ai_service_document_client.py +22 -22
  5. oci/ai_language/ai_service_language_client.py +134 -43
  6. oci/ai_language/models/__init__.py +24 -0
  7. oci/ai_language/models/assertion_details.py +165 -0
  8. oci/ai_language/models/batch_detect_health_entity_details.py +223 -0
  9. oci/ai_language/models/batch_detect_health_entity_result.py +103 -0
  10. oci/ai_language/models/batch_detect_language_pii_entities_details.py +29 -2
  11. oci/ai_language/models/health_entity.py +351 -0
  12. oci/ai_language/models/health_entity_document_result.py +200 -0
  13. oci/ai_language/models/input_location.py +2 -1
  14. oci/ai_language/models/mel_concept.py +103 -0
  15. oci/ai_language/models/mel_concept_details.py +165 -0
  16. oci/ai_language/models/model_details.py +11 -3
  17. oci/ai_language/models/named_entity_recognition_model_details.py +1 -1
  18. oci/ai_language/models/pii_entity.py +118 -7
  19. oci/ai_language/models/pii_model_details.py +91 -0
  20. oci/ai_language/models/pre_trained_health_nlu_model_details.py +1 -1
  21. oci/ai_language/models/pre_trained_key_phrase_extraction_model_details.py +1 -1
  22. oci/ai_language/models/pre_trained_language_detection_model_details.py +1 -1
  23. oci/ai_language/models/pre_trained_named_entity_recognition_model_details.py +1 -1
  24. oci/ai_language/models/pre_trained_pii_model_details.py +1 -1
  25. oci/ai_language/models/pre_trained_sentiment_analysis_model_details.py +1 -1
  26. oci/ai_language/models/pre_trained_summarization.py +1 -1
  27. oci/ai_language/models/pre_trained_text_classification_model_details.py +1 -1
  28. oci/ai_language/models/pre_trained_universal_model.py +1 -1
  29. oci/ai_language/models/profile.py +134 -0
  30. oci/ai_language/models/relation_entity.py +196 -0
  31. oci/ai_language/models/resolved_entities.py +72 -0
  32. oci/ai_language/models/resolved_entity.py +227 -0
  33. oci/ai_language/models/text_classification_model_details.py +1 -1
  34. oci/ai_speech/ai_service_speech_client.py +10 -10
  35. oci/ai_vision/ai_service_vision_client.py +25 -25
  36. oci/analytics/analytics_client.py +23 -23
  37. oci/announcements_service/announcement_client.py +4 -4
  38. oci/announcements_service/announcement_subscription_client.py +9 -9
  39. oci/announcements_service/announcements_preferences_client.py +4 -4
  40. oci/apigateway/api_gateway_client.py +21 -21
  41. oci/apigateway/deployment_client.py +6 -6
  42. oci/apigateway/gateway_client.py +6 -6
  43. oci/apigateway/subscribers_client.py +6 -6
  44. oci/apigateway/usage_plans_client.py +6 -6
  45. oci/apigateway/work_requests_client.py +5 -5
  46. oci/apm_config/config_client.py +8 -8
  47. oci/apm_control_plane/apm_domain_client.py +14 -14
  48. oci/apm_synthetics/apm_synthetic_client.py +28 -28
  49. oci/apm_traces/attributes_client.py +8 -8
  50. oci/apm_traces/query_client.py +2 -2
  51. oci/apm_traces/trace_client.py +4 -4
  52. oci/application_migration/application_migration_client.py +36 -36
  53. oci/appmgmt_control/appmgmt_control_client.py +8 -8
  54. oci/artifacts/artifacts_client.py +32 -32
  55. oci/audit/audit_client.py +3 -3
  56. oci/autoscaling/auto_scaling_client.py +11 -11
  57. oci/bastion/bastion_client.py +15 -15
  58. oci/bds/bds_client.py +51 -51
  59. oci/blockchain/blockchain_platform_client.py +27 -27
  60. oci/budget/budget_client.py +10 -10
  61. oci/capacity_management/capacity_management_client.py +19 -19
  62. oci/certificates/certificates_client.py +5 -5
  63. oci/certificates_management/certificates_management_client.py +32 -32
  64. oci/cims/incident_client.py +8 -8
  65. oci/cims/user_client.py +1 -1
  66. oci/cloud_bridge/common_client.py +5 -5
  67. oci/cloud_bridge/discovery_client.py +14 -14
  68. oci/cloud_bridge/inventory_client.py +16 -16
  69. oci/cloud_bridge/ocb_agent_svc_client.py +23 -23
  70. oci/cloud_guard/cloud_guard_client.py +133 -133
  71. oci/cloud_migrations/migration_client.py +43 -43
  72. oci/compute_cloud_at_customer/compute_cloud_at_customer_client.py +12 -12
  73. oci/compute_instance_agent/compute_instance_agent_client.py +6 -6
  74. oci/compute_instance_agent/plugin_client.py +2 -2
  75. oci/compute_instance_agent/pluginconfig_client.py +1 -1
  76. oci/container_engine/container_engine_client.py +44 -44
  77. oci/container_instances/container_instance_client.py +18 -18
  78. oci/core/blockstorage_client.py +60 -60
  79. oci/core/compute_client.py +99 -99
  80. oci/core/compute_management_client.py +32 -32
  81. oci/core/virtual_network_client.py +242 -242
  82. oci/dashboard_service/dashboard_client.py +6 -6
  83. oci/dashboard_service/dashboard_group_client.py +6 -6
  84. oci/data_catalog/data_catalog_client.py +148 -148
  85. oci/data_flow/data_flow_client.py +52 -46
  86. oci/data_flow/models/sql_endpoint.py +42 -3
  87. oci/data_flow/models/sql_endpoint_summary.py +11 -3
  88. oci/data_integration/data_integration_client.py +163 -163
  89. oci/data_labeling_service/data_labeling_management_client.py +17 -17
  90. oci/data_labeling_service_dataplane/data_labeling_client.py +15 -15
  91. oci/data_safe/data_safe_client.py +272 -272
  92. oci/data_science/data_science_client.py +91 -91
  93. oci/data_science/models/instance_configuration.py +37 -2
  94. oci/database/database_client.py +1224 -537
  95. oci/database/database_client_composite_operations.py +204 -0
  96. oci/database/models/__init__.py +12 -0
  97. oci/database/models/autonomous_container_database.py +31 -0
  98. oci/database/models/autonomous_container_database_summary.py +31 -0
  99. oci/database/models/autonomous_database_software_image.py +489 -0
  100. oci/database/models/autonomous_database_software_image_collection.py +72 -0
  101. oci/database/models/autonomous_database_software_image_summary.py +437 -0
  102. oci/database/models/change_autonomous_database_software_image_compartment_details.py +76 -0
  103. oci/database/models/create_autonomous_container_database_details.py +35 -0
  104. oci/database/models/create_autonomous_database_software_image_details.py +267 -0
  105. oci/database/models/maintenance_window.py +33 -2
  106. oci/database/models/update_autonomous_database_software_image_details.py +119 -0
  107. oci/database_management/db_management_client.py +194 -194
  108. oci/database_management/diagnosability_client.py +4 -4
  109. oci/database_management/managed_my_sql_databases_client.py +7 -7
  110. oci/database_management/perfhub_client.py +1 -1
  111. oci/database_management/sql_tuning_client.py +17 -17
  112. oci/database_migration/database_migration_client.py +41 -41
  113. oci/database_migration/models/aws_s3_data_transfer_medium_details.py +29 -2
  114. oci/database_migration/models/data_transfer_medium_details_v2.py +1 -1
  115. oci/database_migration/models/nfs_data_transfer_medium_details.py +29 -2
  116. oci/database_tools/database_tools_client.py +23 -23
  117. oci/desktops/desktop_service_client.py +21 -21
  118. oci/devops/devops_client.py +89 -89
  119. oci/disaster_recovery/disaster_recovery_client.py +29 -29
  120. oci/dns/dns_client.py +52 -52
  121. oci/dts/appliance_export_job_client.py +6 -6
  122. oci/dts/shipping_vendors_client.py +1 -1
  123. oci/dts/transfer_appliance_client.py +8 -8
  124. oci/dts/transfer_appliance_entitlement_client.py +3 -3
  125. oci/dts/transfer_device_client.py +5 -5
  126. oci/dts/transfer_job_client.py +6 -6
  127. oci/dts/transfer_package_client.py +7 -7
  128. oci/em_warehouse/em_data_lake_client.py +13 -13
  129. oci/em_warehouse/em_warehouse_client.py +13 -13
  130. oci/email/email_client.py +26 -26
  131. oci/email_data_plane/email_dp_client.py +2 -2
  132. oci/events/events_client.py +6 -6
  133. oci/file_storage/file_storage_client.py +50 -50
  134. oci/fleet_software_update/fleet_software_update_client.py +44 -44
  135. oci/functions/functions_invoke_client.py +1 -1
  136. oci/functions/functions_management_client.py +16 -16
  137. oci/fusion_apps/data_masking_activity_client.py +3 -3
  138. oci/fusion_apps/fusion_applications_client.py +39 -39
  139. oci/fusion_apps/fusion_environment_client.py +15 -15
  140. oci/fusion_apps/fusion_environment_family_client.py +8 -8
  141. oci/fusion_apps/refresh_activity_client.py +4 -4
  142. oci/fusion_apps/scheduled_activity_client.py +2 -2
  143. oci/fusion_apps/service_attachment_client.py +2 -2
  144. oci/generative_ai/generative_ai_client.py +24 -24
  145. oci/generative_ai/models/dataset.py +1 -1
  146. oci/generative_ai/models/dedicated_ai_cluster.py +34 -3
  147. oci/generative_ai/models/endpoint.py +27 -0
  148. oci/generative_ai/models/model.py +34 -3
  149. oci/generative_ai/models/model_summary.py +7 -3
  150. oci/generative_ai_inference/generative_ai_inference_client.py +101 -3
  151. oci/generative_ai_inference/models/__init__.py +30 -0
  152. oci/generative_ai_inference/models/base_chat_request.py +109 -0
  153. oci/generative_ai_inference/models/base_chat_response.py +109 -0
  154. oci/generative_ai_inference/models/chat_choice.py +161 -0
  155. oci/generative_ai_inference/models/chat_content.py +101 -0
  156. oci/generative_ai_inference/models/chat_details.py +126 -0
  157. oci/generative_ai_inference/models/chat_result.py +130 -0
  158. oci/generative_ai_inference/models/citation.py +165 -0
  159. oci/generative_ai_inference/models/cohere_chat_request.py +443 -0
  160. oci/generative_ai_inference/models/cohere_chat_response.py +272 -0
  161. oci/generative_ai_inference/models/cohere_llm_inference_response.py +1 -1
  162. oci/generative_ai_inference/models/cohere_message.py +119 -0
  163. oci/generative_ai_inference/models/embed_text_details.py +2 -2
  164. oci/generative_ai_inference/models/generic_chat_request.py +474 -0
  165. oci/generative_ai_inference/models/generic_chat_response.py +113 -0
  166. oci/generative_ai_inference/models/llama_llm_inference_request.py +2 -2
  167. oci/generative_ai_inference/models/llama_llm_inference_response.py +1 -1
  168. oci/generative_ai_inference/models/llm_inference_response.py +11 -3
  169. oci/generative_ai_inference/models/message.py +103 -0
  170. oci/generative_ai_inference/models/search_query.py +72 -0
  171. oci/generative_ai_inference/models/text_content.py +82 -0
  172. oci/generic_artifacts_content/generic_artifacts_content_client.py +3 -3
  173. oci/globally_distributed_database/sharded_database_service_client.py +29 -29
  174. oci/golden_gate/golden_gate_client.py +61 -61
  175. oci/governance_rules_control_plane/governance_rule_client.py +15 -15
  176. oci/governance_rules_control_plane/work_request_client.py +5 -5
  177. oci/healthchecks/health_checks_client.py +17 -17
  178. oci/identity/identity_client.py +145 -145
  179. oci/identity_data_plane/dataplane_client.py +2 -2
  180. oci/identity_domains/identity_domains_client.py +300 -300
  181. oci/integration/integration_instance_client.py +15 -15
  182. oci/jms/java_management_service_client.py +66 -66
  183. oci/jms_java_downloads/java_download_client.py +25 -25
  184. oci/key_management/ekm_client.py +5 -5
  185. oci/key_management/kms_crypto_client.py +6 -6
  186. oci/key_management/kms_hsm_cluster_client.py +12 -12
  187. oci/key_management/kms_management_client.py +21 -21
  188. oci/key_management/kms_vault_client.py +14 -14
  189. oci/license_manager/license_manager_client.py +18 -18
  190. oci/limits/limits_client.py +4 -4
  191. oci/limits/quotas_client.py +7 -7
  192. oci/load_balancer/load_balancer_client.py +61 -61
  193. oci/lockbox/lockbox_client.py +23 -23
  194. oci/log_analytics/log_analytics_client.py +193 -193
  195. oci/logging/logging_management_client.py +30 -30
  196. oci/loggingingestion/logging_client.py +1 -1
  197. oci/loggingsearch/log_search_client.py +1 -1
  198. oci/management_agent/management_agent_client.py +28 -28
  199. oci/management_dashboard/dashx_apis_client.py +14 -14
  200. oci/marketplace/account_client.py +2 -2
  201. oci/marketplace/marketplace_client.py +30 -30
  202. oci/marketplace_publisher/marketplace_publisher_client.py +71 -71
  203. oci/media_services/media_services_client.py +60 -60
  204. oci/media_services/media_stream_client.py +2 -2
  205. oci/monitoring/monitoring_client.py +18 -18
  206. oci/mysql/channels_client.py +7 -7
  207. oci/mysql/db_backups_client.py +6 -6
  208. oci/mysql/db_system_client.py +17 -17
  209. oci/mysql/mysqlaas_client.py +7 -7
  210. oci/mysql/replicas_client.py +5 -5
  211. oci/mysql/work_requests_client.py +4 -4
  212. oci/network_firewall/network_firewall_client.py +80 -80
  213. oci/network_load_balancer/models/__init__.py +2 -0
  214. oci/network_load_balancer/models/backend_set.py +64 -0
  215. oci/network_load_balancer/models/backend_set_details.py +64 -0
  216. oci/network_load_balancer/models/backend_set_summary.py +64 -0
  217. oci/network_load_balancer/models/create_backend_set_details.py +64 -0
  218. oci/network_load_balancer/models/dns_health_checker_details.py +264 -0
  219. oci/network_load_balancer/models/health_checker.py +36 -5
  220. oci/network_load_balancer/models/health_checker_details.py +36 -5
  221. oci/network_load_balancer/models/update_backend_set_details.py +64 -0
  222. oci/network_load_balancer/models/update_health_checker_details.py +36 -5
  223. oci/network_load_balancer/network_load_balancer_client.py +34 -34
  224. oci/nosql/nosql_client.py +24 -24
  225. oci/object_storage/object_storage_client.py +50 -50
  226. oci/oce/oce_instance_client.py +10 -10
  227. oci/oci_control_center/occ_metrics_client.py +3 -3
  228. oci/ocvp/cluster_client.py +5 -5
  229. oci/ocvp/esxi_host_client.py +8 -8
  230. oci/ocvp/sddc_client.py +14 -14
  231. oci/ocvp/work_request_client.py +4 -4
  232. oci/oda/management_client.py +59 -59
  233. oci/oda/oda_client.py +17 -17
  234. oci/oda/odapackage_client.py +7 -7
  235. oci/onesubscription/billing_schedule_client.py +1 -1
  236. oci/onesubscription/commitment_client.py +2 -2
  237. oci/onesubscription/computed_usage_client.py +3 -3
  238. oci/onesubscription/invoice_summary_client.py +2 -2
  239. oci/onesubscription/organization_subscription_client.py +1 -1
  240. oci/onesubscription/ratecard_client.py +1 -1
  241. oci/onesubscription/subscribed_service_client.py +2 -2
  242. oci/onesubscription/subscription_client.py +1 -1
  243. oci/ons/notification_control_plane_client.py +6 -6
  244. oci/ons/notification_data_plane_client.py +10 -10
  245. oci/opa/models/opa_instance.py +7 -3
  246. oci/opa/models/work_request.py +11 -3
  247. oci/opa/models/work_request_summary.py +11 -3
  248. oci/opa/opa_instance_client.py +223 -13
  249. oci/opa/opa_instance_client_composite_operations.py +78 -0
  250. oci/opensearch/opensearch_cluster_backup_client.py +4 -4
  251. oci/opensearch/opensearch_cluster_client.py +14 -14
  252. oci/operator_access_control/access_requests_client.py +10 -10
  253. oci/operator_access_control/operator_actions_client.py +2 -2
  254. oci/operator_access_control/operator_control_assignment_client.py +8 -8
  255. oci/operator_access_control/operator_control_client.py +6 -6
  256. oci/opsi/operations_insights_client.py +175 -175
  257. oci/optimizer/optimizer_client.py +26 -26
  258. oci/os_management/event_client.py +8 -8
  259. oci/os_management/os_management_client.py +69 -69
  260. oci/os_management_hub/lifecycle_environment_client.py +11 -11
  261. oci/os_management_hub/managed_instance_client.py +22 -22
  262. oci/os_management_hub/managed_instance_group_client.py +22 -22
  263. oci/os_management_hub/management_station_client.py +8 -8
  264. oci/os_management_hub/onboarding_client.py +5 -5
  265. oci/os_management_hub/reporting_managed_instance_client.py +3 -3
  266. oci/os_management_hub/scheduled_job_client.py +6 -6
  267. oci/os_management_hub/software_source_client.py +22 -22
  268. oci/os_management_hub/work_request_client.py +4 -4
  269. oci/osp_gateway/address_rule_service_client.py +1 -1
  270. oci/osp_gateway/address_service_client.py +2 -2
  271. oci/osp_gateway/invoice_service_client.py +5 -5
  272. oci/osp_gateway/subscription_service_client.py +5 -5
  273. oci/osub_billing_schedule/billing_schedule_client.py +1 -1
  274. oci/osub_organization_subscription/organization_subscription_client.py +1 -1
  275. oci/osub_subscription/commitment_client.py +2 -2
  276. oci/osub_subscription/ratecard_client.py +1 -1
  277. oci/osub_subscription/subscription_client.py +1 -1
  278. oci/osub_usage/computed_usage_client.py +3 -3
  279. oci/psql/postgresql_client.py +33 -33
  280. oci/queue/queue_admin_client.py +11 -11
  281. oci/queue/queue_client.py +8 -8
  282. oci/recovery/database_recovery_client.py +23 -23
  283. oci/redis/models/create_redis_cluster_details.py +31 -0
  284. oci/redis/models/redis_cluster.py +31 -0
  285. oci/redis/models/redis_cluster_summary.py +31 -0
  286. oci/redis/models/update_redis_cluster_details.py +31 -0
  287. oci/redis/redis_cluster_client.py +11 -11
  288. oci/regions_definitions.py +5 -0
  289. oci/resource_manager/resource_manager_client.py +52 -52
  290. oci/resource_search/resource_search_client.py +3 -3
  291. oci/rover/rover_bundle_client.py +8 -8
  292. oci/rover/rover_cluster_client.py +8 -8
  293. oci/rover/rover_entitlement_client.py +6 -6
  294. oci/rover/rover_node_client.py +15 -15
  295. oci/rover/shape_client.py +1 -1
  296. oci/rover/work_requests_client.py +5 -5
  297. oci/sch/connector_plugins_client.py +2 -2
  298. oci/sch/service_connector_client.py +12 -12
  299. oci/secrets/secrets_client.py +3 -3
  300. oci/service_catalog/service_catalog_client.py +26 -26
  301. oci/service_manager_proxy/service_manager_proxy_client.py +2 -2
  302. oci/service_mesh/service_mesh_client.py +48 -48
  303. oci/stack_monitoring/models/associated_monitored_resource.py +118 -0
  304. oci/stack_monitoring/models/associated_resources_summary.py +118 -0
  305. oci/stack_monitoring/models/create_monitored_resource_type_details.py +118 -0
  306. oci/stack_monitoring/models/discovery_job_log_summary.py +35 -2
  307. oci/stack_monitoring/models/import_oci_telemetry_resources_task_details.py +301 -0
  308. oci/stack_monitoring/models/monitored_resource.py +118 -0
  309. oci/stack_monitoring/models/monitored_resource_member_summary.py +118 -0
  310. oci/stack_monitoring/models/monitored_resource_summary.py +118 -0
  311. oci/stack_monitoring/models/monitored_resource_type.py +118 -0
  312. oci/stack_monitoring/models/monitored_resource_type_summary.py +118 -0
  313. oci/stack_monitoring/models/search_monitored_resources_details.py +184 -0
  314. oci/stack_monitoring/models/update_monitored_resource_type_details.py +118 -0
  315. oci/stack_monitoring/stack_monitoring_client.py +79 -65
  316. oci/streaming/stream_admin_client.py +18 -18
  317. oci/streaming/stream_client.py +8 -8
  318. oci/tenant_manager_control_plane/domain_client.py +5 -5
  319. oci/tenant_manager_control_plane/domain_governance_client.py +5 -5
  320. oci/tenant_manager_control_plane/governance_client.py +2 -2
  321. oci/tenant_manager_control_plane/link_client.py +3 -3
  322. oci/tenant_manager_control_plane/orders_client.py +2 -2
  323. oci/tenant_manager_control_plane/organization_client.py +10 -10
  324. oci/tenant_manager_control_plane/recipient_invitation_client.py +5 -5
  325. oci/tenant_manager_control_plane/sender_invitation_client.py +5 -5
  326. oci/tenant_manager_control_plane/subscription_client.py +11 -11
  327. oci/tenant_manager_control_plane/work_request_client.py +4 -4
  328. oci/threat_intelligence/threatintel_client.py +5 -5
  329. oci/usage/resources_client.py +2 -2
  330. oci/usage/rewards_client.py +6 -6
  331. oci/usage/usagelimits_client.py +1 -1
  332. oci/usage_api/models/__init__.py +12 -0
  333. oci/usage_api/models/create_email_recipients_group_details.py +103 -0
  334. oci/usage_api/models/email_recipient.py +181 -0
  335. oci/usage_api/models/email_recipients_group.py +181 -0
  336. oci/usage_api/models/email_recipients_group_collection.py +72 -0
  337. oci/usage_api/models/email_recipients_group_summary.py +272 -0
  338. oci/usage_api/models/update_email_recipients_group_details.py +72 -0
  339. oci/usage_api/usageapi_client.py +656 -34
  340. oci/usage_api/usageapi_client_composite_operations.py +96 -0
  341. oci/vault/vaults_client.py +13 -13
  342. oci/vbs_inst/vbs_instance_client.py +10 -10
  343. oci/version.py +1 -1
  344. oci/visual_builder/vb_instance_client.py +13 -13
  345. oci/vn_monitoring/vn_monitoring_client.py +12 -12
  346. oci/vulnerability_scanning/vulnerability_scanning_client.py +58 -58
  347. oci/waa/waa_client.py +13 -13
  348. oci/waa/work_request_client.py +4 -4
  349. oci/waas/redirect_client.py +6 -6
  350. oci/waas/waas_client.py +66 -66
  351. oci/waf/waf_client.py +24 -24
  352. oci/work_requests/work_request_client.py +4 -4
  353. {oci-2.125.1.dist-info → oci-2.125.3.dist-info}/METADATA +1 -1
  354. {oci-2.125.1.dist-info → oci-2.125.3.dist-info}/RECORD +358 -318
  355. {oci-2.125.1.dist-info → oci-2.125.3.dist-info}/LICENSE.txt +0 -0
  356. {oci-2.125.1.dist-info → oci-2.125.3.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
  357. {oci-2.125.1.dist-info → oci-2.125.3.dist-info}/WHEEL +0 -0
  358. {oci-2.125.1.dist-info → oci-2.125.3.dist-info}/top_level.txt +0 -0
@@ -22,7 +22,7 @@ missing = Sentinel("Missing")
22
22
 
23
23
  class UsageapiClient(object):
24
24
  """
25
- Use the Usage API to view your Oracle Cloud usage and costs. The API allows you to request data that meets the specified filter criteria, and to group that data by the dimension of your choosing. The Usage API is used by the Cost Analysis tool in the Console. Also see [Using the Usage API](/Content/Billing/Concepts/costanalysisoverview.htm#cost_analysis_using_the_api) for more information.
25
+ Use the Usage API to view your Oracle Cloud usage and costs. The API allows you to request data that meets the specified filter criteria, and to group that data by the chosen dimension. The Usage API is used by the Cost Analysis and Carbon Emissions Analysis tools in the Console. See [Cost Analysis Overview](/Content/Billing/Concepts/costanalysisoverview.htm) and [Using the Usage API](/Content/Billing/Concepts/costanalysisoverview.htm#cost_analysis_using_the_api) for more information.
26
26
  """
27
27
 
28
28
  def __init__(self, config, **kwargs):
@@ -151,7 +151,7 @@ class UsageapiClient(object):
151
151
  :rtype: :class:`~oci.response.Response`
152
152
 
153
153
  :example:
154
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/create_custom_table.py.html>`__ to see an example of how to use create_custom_table API.
154
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/create_custom_table.py.html>`__ to see an example of how to use create_custom_table API.
155
155
  """
156
156
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
157
157
  required_arguments = []
@@ -213,6 +213,118 @@ class UsageapiClient(object):
213
213
  api_reference_link=api_reference_link,
214
214
  required_arguments=required_arguments)
215
215
 
216
+ def create_email_recipients_group(self, create_email_recipients_group_details, subscription_id, **kwargs):
217
+ """
218
+ Add a list of email recipients that can receive usage statements for the subscription.
219
+
220
+
221
+ :param oci.usage_api.models.CreateEmailRecipientsGroupDetails create_email_recipients_group_details: (required)
222
+ New email recipients group details.
223
+
224
+ :param str subscription_id: (required)
225
+ The UsageStatement Subscription unique OCID.
226
+
227
+ :param str opc_request_id: (optional)
228
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
229
+ particular request, please provide the request ID.
230
+
231
+ :param str opc_retry_token: (optional)
232
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
233
+ server error, without risk of executing that same action again. Retry tokens expire after 24
234
+ hours, but can be invalidated before then due to conflicting operations. For example, if a resource
235
+ has been deleted and purged from the system, then a retry of the original creation request
236
+ might be rejected.
237
+
238
+ :param obj retry_strategy: (optional)
239
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
240
+
241
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
242
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
243
+
244
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
245
+
246
+ :param bool allow_control_chars: (optional)
247
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
248
+ By default, the response will not allow control characters in strings
249
+
250
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.usage_api.models.EmailRecipientsGroup`
251
+ :rtype: :class:`~oci.response.Response`
252
+
253
+ :example:
254
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/create_email_recipients_group.py.html>`__ to see an example of how to use create_email_recipients_group API.
255
+ """
256
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
257
+ required_arguments = ['subscriptionId']
258
+ resource_path = "/usageStatements/{subscriptionId}/emailRecipientsGroups"
259
+ method = "POST"
260
+ operation_name = "create_email_recipients_group"
261
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/usage/20200107/EmailRecipientsGroup/CreateEmailRecipientsGroup"
262
+
263
+ # Don't accept unknown kwargs
264
+ expected_kwargs = [
265
+ "allow_control_chars",
266
+ "retry_strategy",
267
+ "opc_request_id",
268
+ "opc_retry_token"
269
+ ]
270
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
271
+ if extra_kwargs:
272
+ raise ValueError(
273
+ f"create_email_recipients_group got unknown kwargs: {extra_kwargs!r}")
274
+
275
+ path_params = {
276
+ "subscriptionId": subscription_id
277
+ }
278
+
279
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
280
+
281
+ for (k, v) in six.iteritems(path_params):
282
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
283
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
284
+
285
+ header_params = {
286
+ "accept": "application/json",
287
+ "content-type": "application/json",
288
+ "opc-request-id": kwargs.get("opc_request_id", missing),
289
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
290
+ }
291
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
292
+
293
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
294
+ operation_retry_strategy=kwargs.get('retry_strategy'),
295
+ client_retry_strategy=self.retry_strategy
296
+ )
297
+
298
+ if retry_strategy:
299
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
300
+ self.base_client.add_opc_retry_token_if_needed(header_params)
301
+ self.base_client.add_opc_client_retries_header(header_params)
302
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
303
+ return retry_strategy.make_retrying_call(
304
+ self.base_client.call_api,
305
+ resource_path=resource_path,
306
+ method=method,
307
+ path_params=path_params,
308
+ header_params=header_params,
309
+ body=create_email_recipients_group_details,
310
+ response_type="EmailRecipientsGroup",
311
+ allow_control_chars=kwargs.get('allow_control_chars'),
312
+ operation_name=operation_name,
313
+ api_reference_link=api_reference_link,
314
+ required_arguments=required_arguments)
315
+ else:
316
+ return self.base_client.call_api(
317
+ resource_path=resource_path,
318
+ method=method,
319
+ path_params=path_params,
320
+ header_params=header_params,
321
+ body=create_email_recipients_group_details,
322
+ response_type="EmailRecipientsGroup",
323
+ allow_control_chars=kwargs.get('allow_control_chars'),
324
+ operation_name=operation_name,
325
+ api_reference_link=api_reference_link,
326
+ required_arguments=required_arguments)
327
+
216
328
  def create_query(self, create_query_details, **kwargs):
217
329
  """
218
330
  Returns the created query.
@@ -248,7 +360,7 @@ class UsageapiClient(object):
248
360
  :rtype: :class:`~oci.response.Response`
249
361
 
250
362
  :example:
251
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/create_query.py.html>`__ to see an example of how to use create_query API.
363
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/create_query.py.html>`__ to see an example of how to use create_query API.
252
364
  """
253
365
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
254
366
  required_arguments = []
@@ -345,7 +457,7 @@ class UsageapiClient(object):
345
457
  :rtype: :class:`~oci.response.Response`
346
458
 
347
459
  :example:
348
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/create_schedule.py.html>`__ to see an example of how to use create_schedule API.
460
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/create_schedule.py.html>`__ to see an example of how to use create_schedule API.
349
461
  """
350
462
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
351
463
  required_arguments = []
@@ -442,7 +554,7 @@ class UsageapiClient(object):
442
554
  :rtype: :class:`~oci.response.Response`
443
555
 
444
556
  :example:
445
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/create_usage_carbon_emissions_query.py.html>`__ to see an example of how to use create_usage_carbon_emissions_query API.
557
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/create_usage_carbon_emissions_query.py.html>`__ to see an example of how to use create_usage_carbon_emissions_query API.
446
558
  """
447
559
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
448
560
  required_arguments = []
@@ -539,7 +651,7 @@ class UsageapiClient(object):
539
651
  :rtype: :class:`~oci.response.Response`
540
652
 
541
653
  :example:
542
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/delete_custom_table.py.html>`__ to see an example of how to use delete_custom_table API.
654
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/delete_custom_table.py.html>`__ to see an example of how to use delete_custom_table API.
543
655
  """
544
656
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
545
657
  required_arguments = ['customTableId']
@@ -608,6 +720,124 @@ class UsageapiClient(object):
608
720
  api_reference_link=api_reference_link,
609
721
  required_arguments=required_arguments)
610
722
 
723
+ def delete_email_recipients_group(self, email_recipients_group_id, subscription_id, compartment_id, **kwargs):
724
+ """
725
+ Delete the email recipients group for the usage statement subscription.
726
+
727
+
728
+ :param str email_recipients_group_id: (required)
729
+ The email recipient group OCID.
730
+
731
+ :param str subscription_id: (required)
732
+ The UsageStatement Subscription unique OCID.
733
+
734
+ :param str compartment_id: (required)
735
+ The compartment ID in which to list resources.
736
+
737
+ :param str opc_request_id: (optional)
738
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
739
+ particular request, please provide the request ID.
740
+
741
+ :param str if_match: (optional)
742
+ For optimistic concurrency control. In the PUT or DELETE call
743
+ for a resource, set the `if-match` parameter to the value of the
744
+ etag from a previous GET or POST response for that resource.
745
+ The resource will be updated or deleted, only if the etag you
746
+ provide matches the resource's current etag value.
747
+
748
+ :param obj retry_strategy: (optional)
749
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
750
+
751
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
752
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
753
+
754
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
755
+
756
+ :param bool allow_control_chars: (optional)
757
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
758
+ By default, the response will not allow control characters in strings
759
+
760
+ :return: A :class:`~oci.response.Response` object with data of type None
761
+ :rtype: :class:`~oci.response.Response`
762
+
763
+ :example:
764
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/delete_email_recipients_group.py.html>`__ to see an example of how to use delete_email_recipients_group API.
765
+ """
766
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
767
+ required_arguments = ['emailRecipientsGroupId', 'subscriptionId', 'compartmentId']
768
+ resource_path = "/usageStatements/{subscriptionId}/emailRecipientsGroups/{emailRecipientsGroupId}"
769
+ method = "DELETE"
770
+ operation_name = "delete_email_recipients_group"
771
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/usage/20200107/EmailRecipientsGroup/DeleteEmailRecipientsGroup"
772
+
773
+ # Don't accept unknown kwargs
774
+ expected_kwargs = [
775
+ "allow_control_chars",
776
+ "retry_strategy",
777
+ "opc_request_id",
778
+ "if_match"
779
+ ]
780
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
781
+ if extra_kwargs:
782
+ raise ValueError(
783
+ f"delete_email_recipients_group got unknown kwargs: {extra_kwargs!r}")
784
+
785
+ path_params = {
786
+ "emailRecipientsGroupId": email_recipients_group_id,
787
+ "subscriptionId": subscription_id
788
+ }
789
+
790
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
791
+
792
+ for (k, v) in six.iteritems(path_params):
793
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
794
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
795
+
796
+ query_params = {
797
+ "compartmentId": compartment_id
798
+ }
799
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
800
+
801
+ header_params = {
802
+ "accept": "application/json",
803
+ "content-type": "application/json",
804
+ "opc-request-id": kwargs.get("opc_request_id", missing),
805
+ "if-match": kwargs.get("if_match", missing)
806
+ }
807
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
808
+
809
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
810
+ operation_retry_strategy=kwargs.get('retry_strategy'),
811
+ client_retry_strategy=self.retry_strategy
812
+ )
813
+
814
+ if retry_strategy:
815
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
816
+ self.base_client.add_opc_client_retries_header(header_params)
817
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
818
+ return retry_strategy.make_retrying_call(
819
+ self.base_client.call_api,
820
+ resource_path=resource_path,
821
+ method=method,
822
+ path_params=path_params,
823
+ query_params=query_params,
824
+ header_params=header_params,
825
+ allow_control_chars=kwargs.get('allow_control_chars'),
826
+ operation_name=operation_name,
827
+ api_reference_link=api_reference_link,
828
+ required_arguments=required_arguments)
829
+ else:
830
+ return self.base_client.call_api(
831
+ resource_path=resource_path,
832
+ method=method,
833
+ path_params=path_params,
834
+ query_params=query_params,
835
+ header_params=header_params,
836
+ allow_control_chars=kwargs.get('allow_control_chars'),
837
+ operation_name=operation_name,
838
+ api_reference_link=api_reference_link,
839
+ required_arguments=required_arguments)
840
+
611
841
  def delete_query(self, query_id, **kwargs):
612
842
  """
613
843
  Delete a saved query by the OCID.
@@ -643,7 +873,7 @@ class UsageapiClient(object):
643
873
  :rtype: :class:`~oci.response.Response`
644
874
 
645
875
  :example:
646
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/delete_query.py.html>`__ to see an example of how to use delete_query API.
876
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/delete_query.py.html>`__ to see an example of how to use delete_query API.
647
877
  """
648
878
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
649
879
  required_arguments = ['queryId']
@@ -747,7 +977,7 @@ class UsageapiClient(object):
747
977
  :rtype: :class:`~oci.response.Response`
748
978
 
749
979
  :example:
750
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/delete_schedule.py.html>`__ to see an example of how to use delete_schedule API.
980
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/delete_schedule.py.html>`__ to see an example of how to use delete_schedule API.
751
981
  """
752
982
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
753
983
  required_arguments = ['scheduleId']
@@ -851,7 +1081,7 @@ class UsageapiClient(object):
851
1081
  :rtype: :class:`~oci.response.Response`
852
1082
 
853
1083
  :example:
854
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/delete_usage_carbon_emissions_query.py.html>`__ to see an example of how to use delete_usage_carbon_emissions_query API.
1084
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/delete_usage_carbon_emissions_query.py.html>`__ to see an example of how to use delete_usage_carbon_emissions_query API.
855
1085
  """
856
1086
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
857
1087
  required_arguments = ['usageCarbonEmissionsQueryId']
@@ -948,7 +1178,7 @@ class UsageapiClient(object):
948
1178
  :rtype: :class:`~oci.response.Response`
949
1179
 
950
1180
  :example:
951
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/get_custom_table.py.html>`__ to see an example of how to use get_custom_table API.
1181
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/get_custom_table.py.html>`__ to see an example of how to use get_custom_table API.
952
1182
  """
953
1183
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
954
1184
  required_arguments = ['customTableId']
@@ -966,10 +1196,114 @@ class UsageapiClient(object):
966
1196
  extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
967
1197
  if extra_kwargs:
968
1198
  raise ValueError(
969
- f"get_custom_table got unknown kwargs: {extra_kwargs!r}")
1199
+ f"get_custom_table got unknown kwargs: {extra_kwargs!r}")
1200
+
1201
+ path_params = {
1202
+ "customTableId": custom_table_id
1203
+ }
1204
+
1205
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
1206
+
1207
+ for (k, v) in six.iteritems(path_params):
1208
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
1209
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
1210
+
1211
+ header_params = {
1212
+ "accept": "application/json",
1213
+ "content-type": "application/json",
1214
+ "opc-request-id": kwargs.get("opc_request_id", missing)
1215
+ }
1216
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
1217
+
1218
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
1219
+ operation_retry_strategy=kwargs.get('retry_strategy'),
1220
+ client_retry_strategy=self.retry_strategy
1221
+ )
1222
+
1223
+ if retry_strategy:
1224
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
1225
+ self.base_client.add_opc_client_retries_header(header_params)
1226
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
1227
+ return retry_strategy.make_retrying_call(
1228
+ self.base_client.call_api,
1229
+ resource_path=resource_path,
1230
+ method=method,
1231
+ path_params=path_params,
1232
+ header_params=header_params,
1233
+ response_type="CustomTable",
1234
+ allow_control_chars=kwargs.get('allow_control_chars'),
1235
+ operation_name=operation_name,
1236
+ api_reference_link=api_reference_link,
1237
+ required_arguments=required_arguments)
1238
+ else:
1239
+ return self.base_client.call_api(
1240
+ resource_path=resource_path,
1241
+ method=method,
1242
+ path_params=path_params,
1243
+ header_params=header_params,
1244
+ response_type="CustomTable",
1245
+ allow_control_chars=kwargs.get('allow_control_chars'),
1246
+ operation_name=operation_name,
1247
+ api_reference_link=api_reference_link,
1248
+ required_arguments=required_arguments)
1249
+
1250
+ def get_email_recipients_group(self, email_recipients_group_id, subscription_id, compartment_id, **kwargs):
1251
+ """
1252
+ Return the saved usage statement email recipient group.
1253
+
1254
+
1255
+ :param str email_recipients_group_id: (required)
1256
+ The email recipient group OCID.
1257
+
1258
+ :param str subscription_id: (required)
1259
+ The UsageStatement Subscription unique OCID.
1260
+
1261
+ :param str compartment_id: (required)
1262
+ The compartment ID in which to list resources.
1263
+
1264
+ :param str opc_request_id: (optional)
1265
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
1266
+ particular request, please provide the request ID.
1267
+
1268
+ :param obj retry_strategy: (optional)
1269
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1270
+
1271
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
1272
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1273
+
1274
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1275
+
1276
+ :param bool allow_control_chars: (optional)
1277
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1278
+ By default, the response will not allow control characters in strings
1279
+
1280
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.usage_api.models.EmailRecipientsGroup`
1281
+ :rtype: :class:`~oci.response.Response`
1282
+
1283
+ :example:
1284
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/get_email_recipients_group.py.html>`__ to see an example of how to use get_email_recipients_group API.
1285
+ """
1286
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1287
+ required_arguments = ['emailRecipientsGroupId', 'subscriptionId', 'compartmentId']
1288
+ resource_path = "/usageStatements/{subscriptionId}/emailRecipientsGroups/{emailRecipientsGroupId}"
1289
+ method = "GET"
1290
+ operation_name = "get_email_recipients_group"
1291
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/usage/20200107/EmailRecipientsGroup/GetEmailRecipientsGroup"
1292
+
1293
+ # Don't accept unknown kwargs
1294
+ expected_kwargs = [
1295
+ "allow_control_chars",
1296
+ "retry_strategy",
1297
+ "opc_request_id"
1298
+ ]
1299
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1300
+ if extra_kwargs:
1301
+ raise ValueError(
1302
+ f"get_email_recipients_group got unknown kwargs: {extra_kwargs!r}")
970
1303
 
971
1304
  path_params = {
972
- "customTableId": custom_table_id
1305
+ "emailRecipientsGroupId": email_recipients_group_id,
1306
+ "subscriptionId": subscription_id
973
1307
  }
974
1308
 
975
1309
  path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
@@ -978,6 +1312,11 @@ class UsageapiClient(object):
978
1312
  if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
979
1313
  raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
980
1314
 
1315
+ query_params = {
1316
+ "compartmentId": compartment_id
1317
+ }
1318
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
1319
+
981
1320
  header_params = {
982
1321
  "accept": "application/json",
983
1322
  "content-type": "application/json",
@@ -999,8 +1338,9 @@ class UsageapiClient(object):
999
1338
  resource_path=resource_path,
1000
1339
  method=method,
1001
1340
  path_params=path_params,
1341
+ query_params=query_params,
1002
1342
  header_params=header_params,
1003
- response_type="CustomTable",
1343
+ response_type="EmailRecipientsGroup",
1004
1344
  allow_control_chars=kwargs.get('allow_control_chars'),
1005
1345
  operation_name=operation_name,
1006
1346
  api_reference_link=api_reference_link,
@@ -1010,8 +1350,9 @@ class UsageapiClient(object):
1010
1350
  resource_path=resource_path,
1011
1351
  method=method,
1012
1352
  path_params=path_params,
1353
+ query_params=query_params,
1013
1354
  header_params=header_params,
1014
- response_type="CustomTable",
1355
+ response_type="EmailRecipientsGroup",
1015
1356
  allow_control_chars=kwargs.get('allow_control_chars'),
1016
1357
  operation_name=operation_name,
1017
1358
  api_reference_link=api_reference_link,
@@ -1045,7 +1386,7 @@ class UsageapiClient(object):
1045
1386
  :rtype: :class:`~oci.response.Response`
1046
1387
 
1047
1388
  :example:
1048
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/get_query.py.html>`__ to see an example of how to use get_query API.
1389
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/get_query.py.html>`__ to see an example of how to use get_query API.
1049
1390
  """
1050
1391
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1051
1392
  required_arguments = ['queryId']
@@ -1142,7 +1483,7 @@ class UsageapiClient(object):
1142
1483
  :rtype: :class:`~oci.response.Response`
1143
1484
 
1144
1485
  :example:
1145
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/get_schedule.py.html>`__ to see an example of how to use get_schedule API.
1486
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/get_schedule.py.html>`__ to see an example of how to use get_schedule API.
1146
1487
  """
1147
1488
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1148
1489
  required_arguments = ['scheduleId']
@@ -1217,7 +1558,7 @@ class UsageapiClient(object):
1217
1558
 
1218
1559
 
1219
1560
  :param str scheduled_run_id: (required)
1220
- The scheduledRun unique OCID.
1561
+ The scheduledRun unique OCID
1221
1562
 
1222
1563
  :param str opc_request_id: (optional)
1223
1564
  Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
@@ -1239,7 +1580,7 @@ class UsageapiClient(object):
1239
1580
  :rtype: :class:`~oci.response.Response`
1240
1581
 
1241
1582
  :example:
1242
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/get_scheduled_run.py.html>`__ to see an example of how to use get_scheduled_run API.
1583
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/get_scheduled_run.py.html>`__ to see an example of how to use get_scheduled_run API.
1243
1584
  """
1244
1585
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1245
1586
  required_arguments = ['scheduledRunId']
@@ -1336,7 +1677,7 @@ class UsageapiClient(object):
1336
1677
  :rtype: :class:`~oci.response.Response`
1337
1678
 
1338
1679
  :example:
1339
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/get_usage_carbon_emissions_query.py.html>`__ to see an example of how to use get_usage_carbon_emissions_query API.
1680
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/get_usage_carbon_emissions_query.py.html>`__ to see an example of how to use get_usage_carbon_emissions_query API.
1340
1681
  """
1341
1682
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1342
1683
  required_arguments = ['usageCarbonEmissionsQueryId']
@@ -1453,7 +1794,7 @@ class UsageapiClient(object):
1453
1794
  :rtype: :class:`~oci.response.Response`
1454
1795
 
1455
1796
  :example:
1456
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/list_custom_tables.py.html>`__ to see an example of how to use list_custom_tables API.
1797
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/list_custom_tables.py.html>`__ to see an example of how to use list_custom_tables API.
1457
1798
  """
1458
1799
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1459
1800
  required_arguments = ['compartmentId', 'savedReportId']
@@ -1540,6 +1881,162 @@ class UsageapiClient(object):
1540
1881
  api_reference_link=api_reference_link,
1541
1882
  required_arguments=required_arguments)
1542
1883
 
1884
+ def list_email_recipients_groups(self, subscription_id, compartment_id, **kwargs):
1885
+ """
1886
+ Return the saved usage statement email recipient group.
1887
+
1888
+
1889
+ :param str subscription_id: (required)
1890
+ The UsageStatement Subscription unique OCID.
1891
+
1892
+ :param str compartment_id: (required)
1893
+ The compartment ID in which to list resources.
1894
+
1895
+ :param str opc_request_id: (optional)
1896
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
1897
+ particular request, please provide the request ID.
1898
+
1899
+ :param int limit: (optional)
1900
+ The maximumimum number of items to return.
1901
+
1902
+ :param str page: (optional)
1903
+ The page token representing the page at which to start retrieving results.
1904
+ This is usually retrieved from a previous list call.
1905
+
1906
+ :param str opc_retry_token: (optional)
1907
+ A token that uniquely identifies a request so it can be retried in case of a timeout or
1908
+ server error, without risk of executing that same action again. Retry tokens expire after 24
1909
+ hours, but can be invalidated before then due to conflicting operations. For example, if a resource
1910
+ has been deleted and purged from the system, then a retry of the original creation request
1911
+ might be rejected.
1912
+
1913
+ :param str sort_by: (optional)
1914
+ The field to sort by. If not specified, the default is displayName.
1915
+
1916
+ Allowed values are: "displayName"
1917
+
1918
+ :param str sort_order: (optional)
1919
+ The sort order to use, whether 'asc' or 'desc'.
1920
+
1921
+ Allowed values are: "ASC", "DESC"
1922
+
1923
+ :param obj retry_strategy: (optional)
1924
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
1925
+
1926
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
1927
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
1928
+
1929
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
1930
+
1931
+ :param bool allow_control_chars: (optional)
1932
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
1933
+ By default, the response will not allow control characters in strings
1934
+
1935
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.usage_api.models.EmailRecipientsGroupCollection`
1936
+ :rtype: :class:`~oci.response.Response`
1937
+
1938
+ :example:
1939
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/list_email_recipients_groups.py.html>`__ to see an example of how to use list_email_recipients_groups API.
1940
+ """
1941
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1942
+ required_arguments = ['subscriptionId', 'compartmentId']
1943
+ resource_path = "/usageStatements/{subscriptionId}/emailRecipientsGroups"
1944
+ method = "GET"
1945
+ operation_name = "list_email_recipients_groups"
1946
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/usage/20200107/EmailRecipientsGroup/ListEmailRecipientsGroups"
1947
+
1948
+ # Don't accept unknown kwargs
1949
+ expected_kwargs = [
1950
+ "allow_control_chars",
1951
+ "retry_strategy",
1952
+ "opc_request_id",
1953
+ "limit",
1954
+ "page",
1955
+ "opc_retry_token",
1956
+ "sort_by",
1957
+ "sort_order"
1958
+ ]
1959
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
1960
+ if extra_kwargs:
1961
+ raise ValueError(
1962
+ f"list_email_recipients_groups got unknown kwargs: {extra_kwargs!r}")
1963
+
1964
+ path_params = {
1965
+ "subscriptionId": subscription_id
1966
+ }
1967
+
1968
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
1969
+
1970
+ for (k, v) in six.iteritems(path_params):
1971
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
1972
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
1973
+
1974
+ if 'sort_by' in kwargs:
1975
+ sort_by_allowed_values = ["displayName"]
1976
+ if kwargs['sort_by'] not in sort_by_allowed_values:
1977
+ raise ValueError(
1978
+ f"Invalid value for `sort_by`, must be one of { sort_by_allowed_values }"
1979
+ )
1980
+
1981
+ if 'sort_order' in kwargs:
1982
+ sort_order_allowed_values = ["ASC", "DESC"]
1983
+ if kwargs['sort_order'] not in sort_order_allowed_values:
1984
+ raise ValueError(
1985
+ f"Invalid value for `sort_order`, must be one of { sort_order_allowed_values }"
1986
+ )
1987
+
1988
+ query_params = {
1989
+ "limit": kwargs.get("limit", missing),
1990
+ "page": kwargs.get("page", missing),
1991
+ "compartmentId": compartment_id,
1992
+ "sortBy": kwargs.get("sort_by", missing),
1993
+ "sortOrder": kwargs.get("sort_order", missing)
1994
+ }
1995
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
1996
+
1997
+ header_params = {
1998
+ "accept": "application/json",
1999
+ "content-type": "application/json",
2000
+ "opc-request-id": kwargs.get("opc_request_id", missing),
2001
+ "opc-retry-token": kwargs.get("opc_retry_token", missing)
2002
+ }
2003
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
2004
+
2005
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
2006
+ operation_retry_strategy=kwargs.get('retry_strategy'),
2007
+ client_retry_strategy=self.retry_strategy
2008
+ )
2009
+
2010
+ if retry_strategy:
2011
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
2012
+ self.base_client.add_opc_retry_token_if_needed(header_params)
2013
+ self.base_client.add_opc_client_retries_header(header_params)
2014
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
2015
+ return retry_strategy.make_retrying_call(
2016
+ self.base_client.call_api,
2017
+ resource_path=resource_path,
2018
+ method=method,
2019
+ path_params=path_params,
2020
+ query_params=query_params,
2021
+ header_params=header_params,
2022
+ response_type="EmailRecipientsGroupCollection",
2023
+ allow_control_chars=kwargs.get('allow_control_chars'),
2024
+ operation_name=operation_name,
2025
+ api_reference_link=api_reference_link,
2026
+ required_arguments=required_arguments)
2027
+ else:
2028
+ return self.base_client.call_api(
2029
+ resource_path=resource_path,
2030
+ method=method,
2031
+ path_params=path_params,
2032
+ query_params=query_params,
2033
+ header_params=header_params,
2034
+ response_type="EmailRecipientsGroupCollection",
2035
+ allow_control_chars=kwargs.get('allow_control_chars'),
2036
+ operation_name=operation_name,
2037
+ api_reference_link=api_reference_link,
2038
+ required_arguments=required_arguments)
2039
+
1543
2040
  def list_queries(self, compartment_id, **kwargs):
1544
2041
  """
1545
2042
  Returns the saved query list.
@@ -1585,7 +2082,7 @@ class UsageapiClient(object):
1585
2082
  :rtype: :class:`~oci.response.Response`
1586
2083
 
1587
2084
  :example:
1588
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/list_queries.py.html>`__ to see an example of how to use list_queries API.
2085
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/list_queries.py.html>`__ to see an example of how to use list_queries API.
1589
2086
  """
1590
2087
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1591
2088
  required_arguments = ['compartmentId']
@@ -1716,7 +2213,7 @@ class UsageapiClient(object):
1716
2213
  :rtype: :class:`~oci.response.Response`
1717
2214
 
1718
2215
  :example:
1719
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/list_scheduled_runs.py.html>`__ to see an example of how to use list_scheduled_runs API.
2216
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/list_scheduled_runs.py.html>`__ to see an example of how to use list_scheduled_runs API.
1720
2217
  """
1721
2218
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1722
2219
  required_arguments = ['scheduleId']
@@ -1850,7 +2347,7 @@ class UsageapiClient(object):
1850
2347
  :rtype: :class:`~oci.response.Response`
1851
2348
 
1852
2349
  :example:
1853
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/list_schedules.py.html>`__ to see an example of how to use list_schedules API.
2350
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/list_schedules.py.html>`__ to see an example of how to use list_schedules API.
1854
2351
  """
1855
2352
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1856
2353
  required_arguments = ['compartmentId']
@@ -1983,7 +2480,7 @@ class UsageapiClient(object):
1983
2480
  :rtype: :class:`~oci.response.Response`
1984
2481
 
1985
2482
  :example:
1986
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/list_usage_carbon_emissions_queries.py.html>`__ to see an example of how to use list_usage_carbon_emissions_queries API.
2483
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/list_usage_carbon_emissions_queries.py.html>`__ to see an example of how to use list_usage_carbon_emissions_queries API.
1987
2484
  """
1988
2485
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
1989
2486
  required_arguments = ['compartmentId']
@@ -2097,7 +2594,7 @@ class UsageapiClient(object):
2097
2594
  :rtype: :class:`~oci.response.Response`
2098
2595
 
2099
2596
  :example:
2100
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/request_average_carbon_emission.py.html>`__ to see an example of how to use request_average_carbon_emission API.
2597
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/request_average_carbon_emission.py.html>`__ to see an example of how to use request_average_carbon_emission API.
2101
2598
  """
2102
2599
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2103
2600
  required_arguments = ['skuPartNumber']
@@ -2197,7 +2694,7 @@ class UsageapiClient(object):
2197
2694
  :rtype: :class:`~oci.response.Response`
2198
2695
 
2199
2696
  :example:
2200
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/request_clean_energy_usage.py.html>`__ to see an example of how to use request_clean_energy_usage API.
2697
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/request_clean_energy_usage.py.html>`__ to see an example of how to use request_clean_energy_usage API.
2201
2698
  """
2202
2699
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2203
2700
  required_arguments = ['region']
@@ -2302,7 +2799,7 @@ class UsageapiClient(object):
2302
2799
  :rtype: :class:`~oci.response.Response`
2303
2800
 
2304
2801
  :example:
2305
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/request_summarized_configurations.py.html>`__ to see an example of how to use request_summarized_configurations API.
2802
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/request_summarized_configurations.py.html>`__ to see an example of how to use request_summarized_configurations API.
2306
2803
  """
2307
2804
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2308
2805
  required_arguments = ['tenantId']
@@ -2401,7 +2898,7 @@ class UsageapiClient(object):
2401
2898
  :rtype: :class:`~oci.response.Response`
2402
2899
 
2403
2900
  :example:
2404
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/request_summarized_usages.py.html>`__ to see an example of how to use request_summarized_usages API.
2901
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/request_summarized_usages.py.html>`__ to see an example of how to use request_summarized_usages API.
2405
2902
  """
2406
2903
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2407
2904
  required_arguments = []
@@ -2498,7 +2995,7 @@ class UsageapiClient(object):
2498
2995
  :rtype: :class:`~oci.response.Response`
2499
2996
 
2500
2997
  :example:
2501
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/request_usage_carbon_emission_config.py.html>`__ to see an example of how to use request_usage_carbon_emission_config API.
2998
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/request_usage_carbon_emission_config.py.html>`__ to see an example of how to use request_usage_carbon_emission_config API.
2502
2999
  """
2503
3000
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2504
3001
  required_arguments = ['tenantId']
@@ -2597,7 +3094,7 @@ class UsageapiClient(object):
2597
3094
  :rtype: :class:`~oci.response.Response`
2598
3095
 
2599
3096
  :example:
2600
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/request_usage_carbon_emissions.py.html>`__ to see an example of how to use request_usage_carbon_emissions API.
3097
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/request_usage_carbon_emissions.py.html>`__ to see an example of how to use request_usage_carbon_emissions API.
2601
3098
  """
2602
3099
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2603
3100
  required_arguments = []
@@ -2704,7 +3201,7 @@ class UsageapiClient(object):
2704
3201
  :rtype: :class:`~oci.response.Response`
2705
3202
 
2706
3203
  :example:
2707
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/update_custom_table.py.html>`__ to see an example of how to use update_custom_table API.
3204
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/update_custom_table.py.html>`__ to see an example of how to use update_custom_table API.
2708
3205
  """
2709
3206
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2710
3207
  required_arguments = ['customTableId']
@@ -2777,6 +3274,131 @@ class UsageapiClient(object):
2777
3274
  api_reference_link=api_reference_link,
2778
3275
  required_arguments=required_arguments)
2779
3276
 
3277
+ def update_email_recipients_group(self, update_email_recipients_group_details, email_recipients_group_id, subscription_id, compartment_id, **kwargs):
3278
+ """
3279
+ Update a saved email recipients group.
3280
+
3281
+
3282
+ :param oci.usage_api.models.UpdateEmailRecipientsGroupDetails update_email_recipients_group_details: (required)
3283
+ The information to be updated.
3284
+
3285
+ :param str email_recipients_group_id: (required)
3286
+ The email recipient group OCID.
3287
+
3288
+ :param str subscription_id: (required)
3289
+ The UsageStatement Subscription unique OCID.
3290
+
3291
+ :param str compartment_id: (required)
3292
+ The compartment ID in which to list resources.
3293
+
3294
+ :param str opc_request_id: (optional)
3295
+ Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a
3296
+ particular request, please provide the request ID.
3297
+
3298
+ :param str if_match: (optional)
3299
+ For optimistic concurrency control. In the PUT or DELETE call
3300
+ for a resource, set the `if-match` parameter to the value of the
3301
+ etag from a previous GET or POST response for that resource.
3302
+ The resource will be updated or deleted, only if the etag you
3303
+ provide matches the resource's current etag value.
3304
+
3305
+ :param obj retry_strategy: (optional)
3306
+ A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.
3307
+
3308
+ This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation will not retry by default, users can also use the convenient :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` provided by the SDK to enable retries for it.
3309
+ The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.
3310
+
3311
+ To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.
3312
+
3313
+ :param bool allow_control_chars: (optional)
3314
+ allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
3315
+ By default, the response will not allow control characters in strings
3316
+
3317
+ :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.usage_api.models.EmailRecipientsGroup`
3318
+ :rtype: :class:`~oci.response.Response`
3319
+
3320
+ :example:
3321
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/update_email_recipients_group.py.html>`__ to see an example of how to use update_email_recipients_group API.
3322
+ """
3323
+ # Required path and query arguments. These are in camelCase to replace values in service endpoints.
3324
+ required_arguments = ['emailRecipientsGroupId', 'subscriptionId', 'compartmentId']
3325
+ resource_path = "/usageStatements/{subscriptionId}/emailRecipientsGroups/{emailRecipientsGroupId}"
3326
+ method = "PUT"
3327
+ operation_name = "update_email_recipients_group"
3328
+ api_reference_link = "https://docs.oracle.com/iaas/api/#/en/usage/20200107/EmailRecipientsGroup/UpdateEmailRecipientsGroup"
3329
+
3330
+ # Don't accept unknown kwargs
3331
+ expected_kwargs = [
3332
+ "allow_control_chars",
3333
+ "retry_strategy",
3334
+ "opc_request_id",
3335
+ "if_match"
3336
+ ]
3337
+ extra_kwargs = [_key for _key in six.iterkeys(kwargs) if _key not in expected_kwargs]
3338
+ if extra_kwargs:
3339
+ raise ValueError(
3340
+ f"update_email_recipients_group got unknown kwargs: {extra_kwargs!r}")
3341
+
3342
+ path_params = {
3343
+ "emailRecipientsGroupId": email_recipients_group_id,
3344
+ "subscriptionId": subscription_id
3345
+ }
3346
+
3347
+ path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing}
3348
+
3349
+ for (k, v) in six.iteritems(path_params):
3350
+ if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0):
3351
+ raise ValueError(f'Parameter {k} cannot be None, whitespace or empty string')
3352
+
3353
+ query_params = {
3354
+ "compartmentId": compartment_id
3355
+ }
3356
+ query_params = {k: v for (k, v) in six.iteritems(query_params) if v is not missing and v is not None}
3357
+
3358
+ header_params = {
3359
+ "accept": "application/json",
3360
+ "content-type": "application/json",
3361
+ "opc-request-id": kwargs.get("opc_request_id", missing),
3362
+ "if-match": kwargs.get("if_match", missing)
3363
+ }
3364
+ header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None}
3365
+
3366
+ retry_strategy = self.base_client.get_preferred_retry_strategy(
3367
+ operation_retry_strategy=kwargs.get('retry_strategy'),
3368
+ client_retry_strategy=self.retry_strategy
3369
+ )
3370
+
3371
+ if retry_strategy:
3372
+ if not isinstance(retry_strategy, retry.NoneRetryStrategy):
3373
+ self.base_client.add_opc_client_retries_header(header_params)
3374
+ retry_strategy.add_circuit_breaker_callback(self.circuit_breaker_callback)
3375
+ return retry_strategy.make_retrying_call(
3376
+ self.base_client.call_api,
3377
+ resource_path=resource_path,
3378
+ method=method,
3379
+ path_params=path_params,
3380
+ query_params=query_params,
3381
+ header_params=header_params,
3382
+ body=update_email_recipients_group_details,
3383
+ response_type="EmailRecipientsGroup",
3384
+ allow_control_chars=kwargs.get('allow_control_chars'),
3385
+ operation_name=operation_name,
3386
+ api_reference_link=api_reference_link,
3387
+ required_arguments=required_arguments)
3388
+ else:
3389
+ return self.base_client.call_api(
3390
+ resource_path=resource_path,
3391
+ method=method,
3392
+ path_params=path_params,
3393
+ query_params=query_params,
3394
+ header_params=header_params,
3395
+ body=update_email_recipients_group_details,
3396
+ response_type="EmailRecipientsGroup",
3397
+ allow_control_chars=kwargs.get('allow_control_chars'),
3398
+ operation_name=operation_name,
3399
+ api_reference_link=api_reference_link,
3400
+ required_arguments=required_arguments)
3401
+
2780
3402
  def update_query(self, update_query_details, query_id, **kwargs):
2781
3403
  """
2782
3404
  Update a saved query by the OCID.
@@ -2815,7 +3437,7 @@ class UsageapiClient(object):
2815
3437
  :rtype: :class:`~oci.response.Response`
2816
3438
 
2817
3439
  :example:
2818
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/update_query.py.html>`__ to see an example of how to use update_query API.
3440
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/update_query.py.html>`__ to see an example of how to use update_query API.
2819
3441
  """
2820
3442
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2821
3443
  required_arguments = ['queryId']
@@ -2926,7 +3548,7 @@ class UsageapiClient(object):
2926
3548
  :rtype: :class:`~oci.response.Response`
2927
3549
 
2928
3550
  :example:
2929
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/update_schedule.py.html>`__ to see an example of how to use update_schedule API.
3551
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/update_schedule.py.html>`__ to see an example of how to use update_schedule API.
2930
3552
  """
2931
3553
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
2932
3554
  required_arguments = ['scheduleId']
@@ -3037,7 +3659,7 @@ class UsageapiClient(object):
3037
3659
  :rtype: :class:`~oci.response.Response`
3038
3660
 
3039
3661
  :example:
3040
- Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.1/usageapi/update_usage_carbon_emissions_query.py.html>`__ to see an example of how to use update_usage_carbon_emissions_query API.
3662
+ Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/2.125.3/usageapi/update_usage_carbon_emissions_query.py.html>`__ to see an example of how to use update_usage_carbon_emissions_query API.
3041
3663
  """
3042
3664
  # Required path and query arguments. These are in camelCase to replace values in service endpoints.
3043
3665
  required_arguments = ['usageCarbonEmissionsQueryId']