hanzoai 8.5.156
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.
- checksums.yaml +7 -0
- data/CLAUDE.md +18 -0
- data/Gemfile +5 -0
- data/LICENSE +201 -0
- data/LLM.md +1 -0
- data/README.md +119 -0
- data/SECURITY.md +5 -0
- data/examples/catalog.rb +16 -0
- data/examples/models.rb +14 -0
- data/hanzo.yml +9 -0
- data/hanzoai.gemspec +41 -0
- data/lib/hanzoai/api/account_api.rb +645 -0
- data/lib/hanzoai/api/ad_api.rb +469 -0
- data/lib/hanzoai/api/affiliate_api.rb +647 -0
- data/lib/hanzoai/api/agents_api.rb +2503 -0
- data/lib/hanzoai/api/ai_api.rb +17385 -0
- data/lib/hanzoai/api/allowance_api.rb +79 -0
- data/lib/hanzoai/api/ask_api.rb +152 -0
- data/lib/hanzoai/api/audit_api.rb +106 -0
- data/lib/hanzoai/api/author_api.rb +343 -0
- data/lib/hanzoai/api/authz_api.rb +187 -0
- data/lib/hanzoai/api/auto_api.rb +1123 -0
- data/lib/hanzoai/api/base_api.rb +199 -0
- data/lib/hanzoai/api/benchmark_api.rb +609 -0
- data/lib/hanzoai/api/billing_api.rb +2774 -0
- data/lib/hanzoai/api/blueprint_api.rb +191 -0
- data/lib/hanzoai/api/books_api.rb +1604 -0
- data/lib/hanzoai/api/bot_api.rb +197 -0
- data/lib/hanzoai/api/campaign_api.rb +745 -0
- data/lib/hanzoai/api/captable_api.rb +1990 -0
- data/lib/hanzoai/api/catalog_api.rb +109 -0
- data/lib/hanzoai/api/channels_api.rb +456 -0
- data/lib/hanzoai/api/cloudflare_api.rb +2178 -0
- data/lib/hanzoai/api/code_api.rb +481 -0
- data/lib/hanzoai/api/commerce_api.rb +10870 -0
- data/lib/hanzoai/api/company_api.rb +1544 -0
- data/lib/hanzoai/api/compliance_api.rb +1095 -0
- data/lib/hanzoai/api/content_api.rb +421 -0
- data/lib/hanzoai/api/crawl_api.rb +90 -0
- data/lib/hanzoai/api/crm_api.rb +1318 -0
- data/lib/hanzoai/api/dataroom_api.rb +1697 -0
- data/lib/hanzoai/api/dataset_api.rb +477 -0
- data/lib/hanzoai/api/deploy_api.rb +1202 -0
- data/lib/hanzoai/api/destination_api.rb +338 -0
- data/lib/hanzoai/api/dns_api.rb +754 -0
- data/lib/hanzoai/api/domain_api.rb +471 -0
- data/lib/hanzoai/api/engine_api.rb +253 -0
- data/lib/hanzoai/api/entitlement_api.rb +216 -0
- data/lib/hanzoai/api/esign_api.rb +908 -0
- data/lib/hanzoai/api/eval_api.rb +1075 -0
- data/lib/hanzoai/api/event_api.rb +778 -0
- data/lib/hanzoai/api/exec_api.rb +263 -0
- data/lib/hanzoai/api/experiment_api.rb +488 -0
- data/lib/hanzoai/api/explorer_api.rb +136 -0
- data/lib/hanzoai/api/flags_api.rb +528 -0
- data/lib/hanzoai/api/flow_api.rb +538 -0
- data/lib/hanzoai/api/framework_api.rb +1254 -0
- data/lib/hanzoai/api/functions_api.rb +707 -0
- data/lib/hanzoai/api/gateway_api.rb +204 -0
- data/lib/hanzoai/api/git_api.rb +2936 -0
- data/lib/hanzoai/api/graph_api.rb +478 -0
- data/lib/hanzoai/api/guide_api.rb +1159 -0
- data/lib/hanzoai/api/help_api.rb +273 -0
- data/lib/hanzoai/api/iam_api.rb +9656 -0
- data/lib/hanzoai/api/index_api.rb +1135 -0
- data/lib/hanzoai/api/ingress_api.rb +1173 -0
- data/lib/hanzoai/api/integrations_api.rb +3047 -0
- data/lib/hanzoai/api/kms_api.rb +341 -0
- data/lib/hanzoai/api/knowledge_api.rb +580 -0
- data/lib/hanzoai/api/kv_api.rb +442 -0
- data/lib/hanzoai/api/label_api.rb +492 -0
- data/lib/hanzoai/api/leaderboard_api.rb +353 -0
- data/lib/hanzoai/api/legal_api.rb +727 -0
- data/lib/hanzoai/api/licensing_api.rb +722 -0
- data/lib/hanzoai/api/link_api.rb +710 -0
- data/lib/hanzoai/api/lsp_api.rb +362 -0
- data/lib/hanzoai/api/marketing_api.rb +2325 -0
- data/lib/hanzoai/api/marketplace_api.rb +401 -0
- data/lib/hanzoai/api/meet_api.rb +456 -0
- data/lib/hanzoai/api/metrics_api.rb +627 -0
- data/lib/hanzoai/api/ml_api.rb +448 -0
- data/lib/hanzoai/api/mq_api.rb +1040 -0
- data/lib/hanzoai/api/network_api.rb +256 -0
- data/lib/hanzoai/api/node_api.rb +250 -0
- data/lib/hanzoai/api/notify_api.rb +283 -0
- data/lib/hanzoai/api/o11y_api.rb +25688 -0
- data/lib/hanzoai/api/openapi_api.rb +316 -0
- data/lib/hanzoai/api/plan_api.rb +832 -0
- data/lib/hanzoai/api/platform_api.rb +2522 -0
- data/lib/hanzoai/api/pref_api.rb +134 -0
- data/lib/hanzoai/api/pricing_api.rb +1646 -0
- data/lib/hanzoai/api/projects_api.rb +1942 -0
- data/lib/hanzoai/api/prompt_api.rb +385 -0
- data/lib/hanzoai/api/provisioning_api.rb +1765 -0
- data/lib/hanzoai/api/pubsub_api.rb +158 -0
- data/lib/hanzoai/api/reference_api.rb +424 -0
- data/lib/hanzoai/api/referral_api.rb +147 -0
- data/lib/hanzoai/api/registry_api.rb +381 -0
- data/lib/hanzoai/api/risk_api.rb +711 -0
- data/lib/hanzoai/api/s3_api.rb +408 -0
- data/lib/hanzoai/api/sandbox_api.rb +1252 -0
- data/lib/hanzoai/api/sbom_api.rb +147 -0
- data/lib/hanzoai/api/search_api.rb +90 -0
- data/lib/hanzoai/api/security_api.rb +456 -0
- data/lib/hanzoai/api/seo_api.rb +487 -0
- data/lib/hanzoai/api/settings_api.rb +159 -0
- data/lib/hanzoai/api/share_api.rb +136 -0
- data/lib/hanzoai/api/social_api.rb +857 -0
- data/lib/hanzoai/api/standing_api.rb +90 -0
- data/lib/hanzoai/api/sync_api.rb +408 -0
- data/lib/hanzoai/api/tasks_api.rb +297 -0
- data/lib/hanzoai/api/taxonomy_api.rb +356 -0
- data/lib/hanzoai/api/team_api.rb +1248 -0
- data/lib/hanzoai/api/tel_api.rb +649 -0
- data/lib/hanzoai/api/template_api.rb +345 -0
- data/lib/hanzoai/api/todo_api.rb +917 -0
- data/lib/hanzoai/api/tools_api.rb +1226 -0
- data/lib/hanzoai/api/translate_api.rb +211 -0
- data/lib/hanzoai/api/treasury_api.rb +142 -0
- data/lib/hanzoai/api/trust_api.rb +1056 -0
- data/lib/hanzoai/api/usage_api.rb +354 -0
- data/lib/hanzoai/api/validator_api.rb +273 -0
- data/lib/hanzoai/api/visor_api.rb +2147 -0
- data/lib/hanzoai/api/wallet_api.rb +555 -0
- data/lib/hanzoai/api/web3_api.rb +285 -0
- data/lib/hanzoai/api/webhook_api.rb +540 -0
- data/lib/hanzoai/api/websearch_api.rb +420 -0
- data/lib/hanzoai/api/world_api.rb +376 -0
- data/lib/hanzoai/api/x402_api.rb +85 -0
- data/lib/hanzoai/api_client.rb +437 -0
- data/lib/hanzoai/api_error.rb +58 -0
- data/lib/hanzoai/configuration.rb +392 -0
- data/lib/hanzoai/models/acc_list.rb +233 -0
- data/lib/hanzoai/models/acc_view.rb +321 -0
- data/lib/hanzoai/models/account.rb +251 -0
- data/lib/hanzoai/models/account_list.rb +223 -0
- data/lib/hanzoai/models/account_view.rb +231 -0
- data/lib/hanzoai/models/accounts.rb +249 -0
- data/lib/hanzoai/models/accounts_out.rb +243 -0
- data/lib/hanzoai/models/accounts_total.rb +271 -0
- data/lib/hanzoai/models/accounts_usage.rb +253 -0
- data/lib/hanzoai/models/accreditation_decision.rb +231 -0
- data/lib/hanzoai/models/accreditation_req.rb +281 -0
- data/lib/hanzoai/models/action_record.rb +291 -0
- data/lib/hanzoai/models/actions_view.rb +223 -0
- data/lib/hanzoai/models/activation_req.rb +235 -0
- data/lib/hanzoai/models/activation_set.rb +223 -0
- data/lib/hanzoai/models/activity_feed.rb +223 -0
- data/lib/hanzoai/models/activity_out.rb +223 -0
- data/lib/hanzoai/models/activity_point.rb +251 -0
- data/lib/hanzoai/models/activity_row.rb +271 -0
- data/lib/hanzoai/models/activity_totals.rb +271 -0
- data/lib/hanzoai/models/activity_view.rb +261 -0
- data/lib/hanzoai/models/ad_campaign.rb +321 -0
- data/lib/hanzoai/models/ad_summary.rb +251 -0
- data/lib/hanzoai/models/add_domain_req.rb +241 -0
- data/lib/hanzoai/models/admission.rb +263 -0
- data/lib/hanzoai/models/advance_in.rb +221 -0
- data/lib/hanzoai/models/affiliate_board.rb +243 -0
- data/lib/hanzoai/models/affiliate_earnings.rb +285 -0
- data/lib/hanzoai/models/affiliate_links.rb +253 -0
- data/lib/hanzoai/models/affiliate_self.rb +377 -0
- data/lib/hanzoai/models/affiliate_standing.rb +363 -0
- data/lib/hanzoai/models/agent_binding.rb +331 -0
- data/lib/hanzoai/models/agent_detail.rb +352 -0
- data/lib/hanzoai/models/agent_list.rb +223 -0
- data/lib/hanzoai/models/agent_run_view.rb +351 -0
- data/lib/hanzoai/models/agent_view.rb +343 -0
- data/lib/hanzoai/models/ai_mcp_app.rb +231 -0
- data/lib/hanzoai/models/ai_mcp_surface.rb +245 -0
- data/lib/hanzoai/models/alert.rb +373 -0
- data/lib/hanzoai/models/alert_patch.rb +292 -0
- data/lib/hanzoai/models/alert_spec.rb +292 -0
- data/lib/hanzoai/models/allowance.rb +271 -0
- data/lib/hanzoai/models/allowlist_put_in.rb +277 -0
- data/lib/hanzoai/models/allowlist_view.rb +279 -0
- data/lib/hanzoai/models/analysis.rb +273 -0
- data/lib/hanzoai/models/analytics_view.rb +233 -0
- data/lib/hanzoai/models/analyze_query.rb +261 -0
- data/lib/hanzoai/models/answer.rb +329 -0
- data/lib/hanzoai/models/api_key.rb +263 -0
- data/lib/hanzoai/models/api_key_list.rb +223 -0
- data/lib/hanzoai/models/app_view.rb +475 -0
- data/lib/hanzoai/models/appearance.rb +241 -0
- data/lib/hanzoai/models/application.rb +271 -0
- data/lib/hanzoai/models/application_list.rb +223 -0
- data/lib/hanzoai/models/applied_resource.rb +241 -0
- data/lib/hanzoai/models/apply_request.rb +221 -0
- data/lib/hanzoai/models/approve_pairing_in.rb +231 -0
- data/lib/hanzoai/models/argo_app.rb +261 -0
- data/lib/hanzoai/models/argo_app_list.rb +253 -0
- data/lib/hanzoai/models/argo_cluster.rb +251 -0
- data/lib/hanzoai/models/argo_cluster_info.rb +241 -0
- data/lib/hanzoai/models/argo_cluster_list.rb +233 -0
- data/lib/hanzoai/models/argo_connection_state.rb +241 -0
- data/lib/hanzoai/models/argo_destination.rb +241 -0
- data/lib/hanzoai/models/argo_group_kind.rb +231 -0
- data/lib/hanzoai/models/argo_health.rb +231 -0
- data/lib/hanzoai/models/argo_info_item.rb +231 -0
- data/lib/hanzoai/models/argo_list_meta.rb +221 -0
- data/lib/hanzoai/models/argo_meta.rb +263 -0
- data/lib/hanzoai/models/argo_node.rb +331 -0
- data/lib/hanzoai/models/argo_project.rb +260 -0
- data/lib/hanzoai/models/argo_project_list.rb +233 -0
- data/lib/hanzoai/models/argo_project_spec.rb +257 -0
- data/lib/hanzoai/models/argo_resource_ref.rb +271 -0
- data/lib/hanzoai/models/argo_resource_status.rb +281 -0
- data/lib/hanzoai/models/argo_revision_metadata.rb +263 -0
- data/lib/hanzoai/models/argo_source.rb +241 -0
- data/lib/hanzoai/models/argo_spec.rb +241 -0
- data/lib/hanzoai/models/argo_status.rb +263 -0
- data/lib/hanzoai/models/argo_summary.rb +223 -0
- data/lib/hanzoai/models/argo_sync_status.rb +231 -0
- data/lib/hanzoai/models/argo_sync_windows.rb +245 -0
- data/lib/hanzoai/models/argo_tree.rb +247 -0
- data/lib/hanzoai/models/arm.rb +251 -0
- data/lib/hanzoai/models/ask_answer.rb +253 -0
- data/lib/hanzoai/models/ask_post_in.rb +231 -0
- data/lib/hanzoai/models/ask_request.rb +312 -0
- data/lib/hanzoai/models/ask_response.rb +257 -0
- data/lib/hanzoai/models/assignment.rb +261 -0
- data/lib/hanzoai/models/attribute_request.rb +221 -0
- data/lib/hanzoai/models/attribution.rb +251 -0
- data/lib/hanzoai/models/audience.rb +271 -0
- data/lib/hanzoai/models/audience_list.rb +223 -0
- data/lib/hanzoai/models/audience_preview.rb +283 -0
- data/lib/hanzoai/models/audit_list.rb +233 -0
- data/lib/hanzoai/models/author_repo.rb +271 -0
- data/lib/hanzoai/models/authored_plugin.rb +271 -0
- data/lib/hanzoai/models/authored_plugin_list.rb +223 -0
- data/lib/hanzoai/models/authored_skill_list.rb +223 -0
- data/lib/hanzoai/models/authorize_out.rb +221 -0
- data/lib/hanzoai/models/backend.rb +231 -0
- data/lib/hanzoai/models/backend_status.rb +261 -0
- data/lib/hanzoai/models/balance_line.rb +251 -0
- data/lib/hanzoai/models/balance_sheet.rb +297 -0
- data/lib/hanzoai/models/balances.rb +241 -0
- data/lib/hanzoai/models/bank_question.rb +261 -0
- data/lib/hanzoai/models/bank_tally.rb +271 -0
- data/lib/hanzoai/models/bank_txn_row.rb +311 -0
- data/lib/hanzoai/models/base_health.rb +231 -0
- data/lib/hanzoai/models/base_view.rb +241 -0
- data/lib/hanzoai/models/begin_in.rb +251 -0
- data/lib/hanzoai/models/benchmark.rb +271 -0
- data/lib/hanzoai/models/benchmark_catalog.rb +233 -0
- data/lib/hanzoai/models/billing_account.rb +275 -0
- data/lib/hanzoai/models/billing_invoice.rb +439 -0
- data/lib/hanzoai/models/binary_spec.rb +283 -0
- data/lib/hanzoai/models/bind_agent_req.rb +241 -0
- data/lib/hanzoai/models/binding_list.rb +223 -0
- data/lib/hanzoai/models/blob.rb +253 -0
- data/lib/hanzoai/models/blob_json.rb +271 -0
- data/lib/hanzoai/models/blog.rb +261 -0
- data/lib/hanzoai/models/blueprint.rb +311 -0
- data/lib/hanzoai/models/blueprint_counts.rb +261 -0
- data/lib/hanzoai/models/blueprint_health.rb +251 -0
- data/lib/hanzoai/models/blueprint_index.rb +223 -0
- data/lib/hanzoai/models/blueprint_row.rb +241 -0
- data/lib/hanzoai/models/blueprint_versions_view.rb +233 -0
- data/lib/hanzoai/models/blueprint_view.rb +251 -0
- data/lib/hanzoai/models/board.rb +285 -0
- data/lib/hanzoai/models/board_item.rb +271 -0
- data/lib/hanzoai/models/board_page.rb +233 -0
- data/lib/hanzoai/models/board_point.rb +261 -0
- data/lib/hanzoai/models/board_range.rb +251 -0
- data/lib/hanzoai/models/board_resp.rb +315 -0
- data/lib/hanzoai/models/board_scope.rb +241 -0
- data/lib/hanzoai/models/board_totals.rb +301 -0
- data/lib/hanzoai/models/book_request.rb +241 -0
- data/lib/hanzoai/models/book_response.rb +231 -0
- data/lib/hanzoai/models/bot_list.rb +223 -0
- data/lib/hanzoai/models/bot_member.rb +261 -0
- data/lib/hanzoai/models/bot_roster.rb +223 -0
- data/lib/hanzoai/models/bot_run.rb +271 -0
- data/lib/hanzoai/models/bot_runs.rb +223 -0
- data/lib/hanzoai/models/bot_stopped.rb +231 -0
- data/lib/hanzoai/models/bot_sync.rb +231 -0
- data/lib/hanzoai/models/bot_view.rb +357 -0
- data/lib/hanzoai/models/breakdown.rb +253 -0
- data/lib/hanzoai/models/breakdown_row.rb +251 -0
- data/lib/hanzoai/models/browser_tag_out.rb +238 -0
- data/lib/hanzoai/models/bucket_create_in.rb +221 -0
- data/lib/hanzoai/models/bucket_in.rb +221 -0
- data/lib/hanzoai/models/bucket_item.rb +231 -0
- data/lib/hanzoai/models/bucket_list.rb +233 -0
- data/lib/hanzoai/models/bucket_record.rb +251 -0
- data/lib/hanzoai/models/bucket_write.rb +251 -0
- data/lib/hanzoai/models/build_board.rb +223 -0
- data/lib/hanzoai/models/build_list.rb +223 -0
- data/lib/hanzoai/models/build_out.rb +241 -0
- data/lib/hanzoai/models/build_request.rb +251 -0
- data/lib/hanzoai/models/build_row.rb +271 -0
- data/lib/hanzoai/models/build_summary.rb +311 -0
- data/lib/hanzoai/models/build_turn.rb +281 -0
- data/lib/hanzoai/models/build_view.rb +333 -0
- data/lib/hanzoai/models/bus_ack.rb +251 -0
- data/lib/hanzoai/models/bus_message.rb +263 -0
- data/lib/hanzoai/models/bus_publish.rb +243 -0
- data/lib/hanzoai/models/bus_request.rb +253 -0
- data/lib/hanzoai/models/buy_input.rb +221 -0
- data/lib/hanzoai/models/byo_gpu.rb +251 -0
- data/lib/hanzoai/models/byo_worker.rb +425 -0
- data/lib/hanzoai/models/calendar_post.rb +311 -0
- data/lib/hanzoai/models/call.rb +271 -0
- data/lib/hanzoai/models/call_input.rb +261 -0
- data/lib/hanzoai/models/call_list.rb +223 -0
- data/lib/hanzoai/models/campaign.rb +311 -0
- data/lib/hanzoai/models/campaign_input.rb +281 -0
- data/lib/hanzoai/models/campaign_list.rb +223 -0
- data/lib/hanzoai/models/campaign_page.rb +223 -0
- data/lib/hanzoai/models/campaign_record.rb +315 -0
- data/lib/hanzoai/models/campaign_results.rb +413 -0
- data/lib/hanzoai/models/campaign_summary.rb +253 -0
- data/lib/hanzoai/models/campaign_update.rb +279 -0
- data/lib/hanzoai/models/campaign_write.rb +275 -0
- data/lib/hanzoai/models/cap_verdict.rb +256 -0
- data/lib/hanzoai/models/capabilities.rb +261 -0
- data/lib/hanzoai/models/capability.rb +247 -0
- data/lib/hanzoai/models/captable_class_holding.rb +261 -0
- data/lib/hanzoai/models/captable_company.rb +291 -0
- data/lib/hanzoai/models/captable_company_update.rb +251 -0
- data/lib/hanzoai/models/captable_convertible_in.rb +321 -0
- data/lib/hanzoai/models/captable_convertibles.rb +231 -0
- data/lib/hanzoai/models/captable_created.rb +241 -0
- data/lib/hanzoai/models/captable_deleted.rb +221 -0
- data/lib/hanzoai/models/captable_equity_plan.rb +301 -0
- data/lib/hanzoai/models/captable_equity_plan_in.rb +281 -0
- data/lib/hanzoai/models/captable_equity_plans.rb +223 -0
- data/lib/hanzoai/models/captable_holding.rb +271 -0
- data/lib/hanzoai/models/captable_instrument_total.rb +231 -0
- data/lib/hanzoai/models/captable_invested.rb +251 -0
- data/lib/hanzoai/models/captable_investment.rb +291 -0
- data/lib/hanzoai/models/captable_investment_in.rb +261 -0
- data/lib/hanzoai/models/captable_investments.rb +223 -0
- data/lib/hanzoai/models/captable_note.rb +321 -0
- data/lib/hanzoai/models/captable_notes.rb +223 -0
- data/lib/hanzoai/models/captable_option.rb +351 -0
- data/lib/hanzoai/models/captable_option_in.rb +361 -0
- data/lib/hanzoai/models/captable_options.rb +223 -0
- data/lib/hanzoai/models/captable_round.rb +321 -0
- data/lib/hanzoai/models/captable_round_close_request.rb +231 -0
- data/lib/hanzoai/models/captable_round_detail.rb +233 -0
- data/lib/hanzoai/models/captable_round_in.rb +271 -0
- data/lib/hanzoai/models/captable_round_investment.rb +281 -0
- data/lib/hanzoai/models/captable_round_totals.rb +231 -0
- data/lib/hanzoai/models/captable_rounds.rb +223 -0
- data/lib/hanzoai/models/captable_safe.rb +331 -0
- data/lib/hanzoai/models/captable_safe_in.rb +311 -0
- data/lib/hanzoai/models/captable_safes.rb +223 -0
- data/lib/hanzoai/models/captable_share.rb +343 -0
- data/lib/hanzoai/models/captable_share_class.rb +351 -0
- data/lib/hanzoai/models/captable_share_class_amend.rb +351 -0
- data/lib/hanzoai/models/captable_share_class_in.rb +341 -0
- data/lib/hanzoai/models/captable_share_in.rb +383 -0
- data/lib/hanzoai/models/captable_share_transfer.rb +251 -0
- data/lib/hanzoai/models/captable_shares.rb +223 -0
- data/lib/hanzoai/models/captable_stakeholder.rb +351 -0
- data/lib/hanzoai/models/captable_stakeholder_patch.rb +321 -0
- data/lib/hanzoai/models/captable_summary.rb +275 -0
- data/lib/hanzoai/models/captable_summary_company.rb +231 -0
- data/lib/hanzoai/models/captable_totals.rb +261 -0
- data/lib/hanzoai/models/captable_transferred.rb +251 -0
- data/lib/hanzoai/models/captable_updated.rb +231 -0
- data/lib/hanzoai/models/capture_batch.rb +233 -0
- data/lib/hanzoai/models/capture_event.rb +564 -0
- data/lib/hanzoai/models/capture_result.rb +229 -0
- data/lib/hanzoai/models/captured_error.rb +331 -0
- data/lib/hanzoai/models/cart.rb +373 -0
- data/lib/hanzoai/models/cart_item.rb +281 -0
- data/lib/hanzoai/models/cart_item_set.rb +251 -0
- data/lib/hanzoai/models/cart_open.rb +251 -0
- data/lib/hanzoai/models/catalog.rb +231 -0
- data/lib/hanzoai/models/catalog_entry.rb +261 -0
- data/lib/hanzoai/models/catalog_list.rb +223 -0
- data/lib/hanzoai/models/catalog_out.rb +223 -0
- data/lib/hanzoai/models/catalog_page.rb +245 -0
- data/lib/hanzoai/models/category.rb +285 -0
- data/lib/hanzoai/models/category_in.rb +263 -0
- data/lib/hanzoai/models/category_spend.rb +241 -0
- data/lib/hanzoai/models/cd_app.rb +340 -0
- data/lib/hanzoai/models/cd_resp.rb +222 -0
- data/lib/hanzoai/models/centre.rb +367 -0
- data/lib/hanzoai/models/chain.rb +241 -0
- data/lib/hanzoai/models/chain_list.rb +223 -0
- data/lib/hanzoai/models/chain_status.rb +258 -0
- data/lib/hanzoai/models/challenge_view.rb +261 -0
- data/lib/hanzoai/models/channel.rb +251 -0
- data/lib/hanzoai/models/channel_add.rb +251 -0
- data/lib/hanzoai/models/channel_list.rb +223 -0
- data/lib/hanzoai/models/channel_metric.rb +271 -0
- data/lib/hanzoai/models/channel_result.rb +261 -0
- data/lib/hanzoai/models/channel_spec.rb +271 -0
- data/lib/hanzoai/models/channel_view.rb +291 -0
- data/lib/hanzoai/models/charge.rb +291 -0
- data/lib/hanzoai/models/charged.rb +261 -0
- data/lib/hanzoai/models/chat_channels.rb +223 -0
- data/lib/hanzoai/models/chat_request.rb +221 -0
- data/lib/hanzoai/models/chat_response.rb +243 -0
- data/lib/hanzoai/models/check_list.rb +233 -0
- data/lib/hanzoai/models/check_view.rb +311 -0
- data/lib/hanzoai/models/citation.rb +261 -0
- data/lib/hanzoai/models/claim.rb +241 -0
- data/lib/hanzoai/models/claim_key_out.rb +231 -0
- data/lib/hanzoai/models/claim_request.rb +221 -0
- data/lib/hanzoai/models/claim_row.rb +301 -0
- data/lib/hanzoai/models/claim_view.rb +261 -0
- data/lib/hanzoai/models/claims_out.rb +233 -0
- data/lib/hanzoai/models/clause_coverage.rb +363 -0
- data/lib/hanzoai/models/clause_row.rb +263 -0
- data/lib/hanzoai/models/clear_reference_out.rb +251 -0
- data/lib/hanzoai/models/click_count.rb +221 -0
- data/lib/hanzoai/models/click_request.rb +221 -0
- data/lib/hanzoai/models/clip_body.rb +238 -0
- data/lib/hanzoai/models/cluster_attach.rb +251 -0
- data/lib/hanzoai/models/cluster_detached.rb +221 -0
- data/lib/hanzoai/models/cluster_detail_view.rb +333 -0
- data/lib/hanzoai/models/cluster_list.rb +235 -0
- data/lib/hanzoai/models/cluster_view.rb +333 -0
- data/lib/hanzoai/models/code_file.rb +251 -0
- data/lib/hanzoai/models/code_result.rb +253 -0
- data/lib/hanzoai/models/code_run.rb +319 -0
- data/lib/hanzoai/models/code_view.rb +281 -0
- data/lib/hanzoai/models/coding_start_in.rb +331 -0
- data/lib/hanzoai/models/coding_started.rb +261 -0
- data/lib/hanzoai/models/collab_payload.rb +245 -0
- data/lib/hanzoai/models/collab_request.rb +241 -0
- data/lib/hanzoai/models/collab_result.rb +233 -0
- data/lib/hanzoai/models/collected.rb +281 -0
- data/lib/hanzoai/models/commerce_overview.rb +271 -0
- data/lib/hanzoai/models/commit_json.rb +271 -0
- data/lib/hanzoai/models/commits_json.rb +223 -0
- data/lib/hanzoai/models/company.rb +341 -0
- data/lib/hanzoai/models/company_list.rb +223 -0
- data/lib/hanzoai/models/company_req.rb +321 -0
- data/lib/hanzoai/models/completion.rb +241 -0
- data/lib/hanzoai/models/config.rb +303 -0
- data/lib/hanzoai/models/conn_view.rb +293 -0
- data/lib/hanzoai/models/connect_in.rb +241 -0
- data/lib/hanzoai/models/connect_out.rb +273 -0
- data/lib/hanzoai/models/connect_request.rb +241 -0
- data/lib/hanzoai/models/connection_out.rb +241 -0
- data/lib/hanzoai/models/connection_view.rb +253 -0
- data/lib/hanzoai/models/connector_action.rb +249 -0
- data/lib/hanzoai/models/connector_auth.rb +229 -0
- data/lib/hanzoai/models/connector_metadata.rb +298 -0
- data/lib/hanzoai/models/connector_provider_view.rb +275 -0
- data/lib/hanzoai/models/connector_providers_out.rb +223 -0
- data/lib/hanzoai/models/connector_token_out.rb +251 -0
- data/lib/hanzoai/models/connector_trigger.rb +258 -0
- data/lib/hanzoai/models/connector_view.rb +291 -0
- data/lib/hanzoai/models/connectors_out.rb +223 -0
- data/lib/hanzoai/models/console_settings.rb +371 -0
- data/lib/hanzoai/models/console_settings_dex_config.rb +223 -0
- data/lib/hanzoai/models/console_settings_google_analytics.rb +230 -0
- data/lib/hanzoai/models/console_settings_help.rb +241 -0
- data/lib/hanzoai/models/consumer.rb +311 -0
- data/lib/hanzoai/models/contact.rb +331 -0
- data/lib/hanzoai/models/contact_list.rb +223 -0
- data/lib/hanzoai/models/contact_req.rb +311 -0
- data/lib/hanzoai/models/contacts.rb +251 -0
- data/lib/hanzoai/models/context_bundle.rb +263 -0
- data/lib/hanzoai/models/context_in.rb +241 -0
- data/lib/hanzoai/models/control_command_view.rb +251 -0
- data/lib/hanzoai/models/control_drain.rb +233 -0
- data/lib/hanzoai/models/control_in.rb +241 -0
- data/lib/hanzoai/models/control_list.rb +293 -0
- data/lib/hanzoai/models/control_result.rb +241 -0
- data/lib/hanzoai/models/cookie_ack.rb +221 -0
- data/lib/hanzoai/models/corpus_view.rb +243 -0
- data/lib/hanzoai/models/cost_line.rb +233 -0
- data/lib/hanzoai/models/cover_row.rb +331 -0
- data/lib/hanzoai/models/crawl_document.rb +251 -0
- data/lib/hanzoai/models/crawl_request.rb +221 -0
- data/lib/hanzoai/models/crawl_result.rb +241 -0
- data/lib/hanzoai/models/create_account_in.rb +221 -0
- data/lib/hanzoai/models/create_agent_in.rb +303 -0
- data/lib/hanzoai/models/create_app_req.rb +365 -0
- data/lib/hanzoai/models/create_body.rb +334 -0
- data/lib/hanzoai/models/create_cluster_req.rb +250 -0
- data/lib/hanzoai/models/create_cluster_req_node_pool.rb +239 -0
- data/lib/hanzoai/models/create_endpoint_in.rb +253 -0
- data/lib/hanzoai/models/create_flow_req.rb +251 -0
- data/lib/hanzoai/models/create_link_request.rb +231 -0
- data/lib/hanzoai/models/create_req.rb +251 -0
- data/lib/hanzoai/models/create_server_req.rb +261 -0
- data/lib/hanzoai/models/create_version_in.rb +241 -0
- data/lib/hanzoai/models/create_wallet_in.rb +271 -0
- data/lib/hanzoai/models/credential_in.rb +261 -0
- data/lib/hanzoai/models/credential_out.rb +231 -0
- data/lib/hanzoai/models/credit_balance.rb +231 -0
- data/lib/hanzoai/models/credit_entry.rb +229 -0
- data/lib/hanzoai/models/credit_grant.rb +328 -0
- data/lib/hanzoai/models/credit_grants.rb +231 -0
- data/lib/hanzoai/models/crm_summary.rb +241 -0
- data/lib/hanzoai/models/crypto_asset.rb +241 -0
- data/lib/hanzoai/models/crypto_deposit.rb +274 -0
- data/lib/hanzoai/models/crypto_options.rb +233 -0
- data/lib/hanzoai/models/csrf_resp.rb +231 -0
- data/lib/hanzoai/models/curate_req.rb +261 -0
- data/lib/hanzoai/models/curriculum.rb +243 -0
- data/lib/hanzoai/models/curriculum_view.rb +231 -0
- data/lib/hanzoai/models/d1_query.rb +233 -0
- data/lib/hanzoai/models/dash_resp.rb +315 -0
- data/lib/hanzoai/models/database_create_in.rb +221 -0
- data/lib/hanzoai/models/dataroom_add_document.rb +241 -0
- data/lib/hanzoai/models/dataroom_create.rb +231 -0
- data/lib/hanzoai/models/dataroom_document.rb +301 -0
- data/lib/hanzoai/models/dataroom_document_one.rb +221 -0
- data/lib/hanzoai/models/dataroom_documents.rb +223 -0
- data/lib/hanzoai/models/dataroom_link.rb +355 -0
- data/lib/hanzoai/models/dataroom_link_create.rb +305 -0
- data/lib/hanzoai/models/dataroom_link_one.rb +221 -0
- data/lib/hanzoai/models/dataroom_link_stats.rb +253 -0
- data/lib/hanzoai/models/dataroom_links.rb +223 -0
- data/lib/hanzoai/models/dataroom_liveness.rb +231 -0
- data/lib/hanzoai/models/dataroom_member.rb +321 -0
- data/lib/hanzoai/models/dataroom_membership.rb +241 -0
- data/lib/hanzoai/models/dataroom_page_stat.rb +251 -0
- data/lib/hanzoai/models/dataroom_room.rb +271 -0
- data/lib/hanzoai/models/dataroom_room_detail.rb +283 -0
- data/lib/hanzoai/models/dataroom_room_detail_one.rb +221 -0
- data/lib/hanzoai/models/dataroom_room_one.rb +221 -0
- data/lib/hanzoai/models/dataroom_rooms.rb +223 -0
- data/lib/hanzoai/models/dataroom_stats.rb +253 -0
- data/lib/hanzoai/models/dataset_list.rb +223 -0
- data/lib/hanzoai/models/dataset_req.rb +260 -0
- data/lib/hanzoai/models/dataset_view.rb +273 -0
- data/lib/hanzoai/models/decide_body.rb +238 -0
- data/lib/hanzoai/models/decision_in.rb +231 -0
- data/lib/hanzoai/models/deck_out.rb +220 -0
- data/lib/hanzoai/models/declaration.rb +334 -0
- data/lib/hanzoai/models/declare_env.rb +239 -0
- data/lib/hanzoai/models/declared.rb +332 -0
- data/lib/hanzoai/models/declared_resp.rb +241 -0
- data/lib/hanzoai/models/def_row.rb +261 -0
- data/lib/hanzoai/models/definition.rb +340 -0
- data/lib/hanzoai/models/defs_out.rb +223 -0
- data/lib/hanzoai/models/deleted.rb +221 -0
- data/lib/hanzoai/models/deleted_out.rb +221 -0
- data/lib/hanzoai/models/delivery.rb +283 -0
- data/lib/hanzoai/models/delivery_list.rb +223 -0
- data/lib/hanzoai/models/delivery_row.rb +301 -0
- data/lib/hanzoai/models/deploy_health.rb +251 -0
- data/lib/hanzoai/models/deploy_logs.rb +241 -0
- data/lib/hanzoai/models/deploy_record.rb +271 -0
- data/lib/hanzoai/models/deploy_req.rb +251 -0
- data/lib/hanzoai/models/deploy_request.rb +231 -0
- data/lib/hanzoai/models/deployment_view.rb +331 -0
- data/lib/hanzoai/models/destination_disconnected.rb +221 -0
- data/lib/hanzoai/models/destination_field.rb +251 -0
- data/lib/hanzoai/models/destination_list.rb +223 -0
- data/lib/hanzoai/models/destination_status.rb +327 -0
- data/lib/hanzoai/models/destination_test.rb +251 -0
- data/lib/hanzoai/models/detachment.rb +231 -0
- data/lib/hanzoai/models/device_poll_out.rb +241 -0
- data/lib/hanzoai/models/device_start_in.rb +231 -0
- data/lib/hanzoai/models/device_start_out.rb +261 -0
- data/lib/hanzoai/models/device_view.rb +273 -0
- data/lib/hanzoai/models/diagnostic.rb +261 -0
- data/lib/hanzoai/models/disconnect_out.rb +221 -0
- data/lib/hanzoai/models/doc_field.rb +310 -0
- data/lib/hanzoai/models/doc_perm.rb +274 -0
- data/lib/hanzoai/models/doc_row.rb +311 -0
- data/lib/hanzoai/models/doc_type.rb +305 -0
- data/lib/hanzoai/models/doc_type_list.rb +223 -0
- data/lib/hanzoai/models/document_list.rb +223 -0
- data/lib/hanzoai/models/document_page.rb +233 -0
- data/lib/hanzoai/models/document_reply.rb +231 -0
- data/lib/hanzoai/models/document_summary.rb +311 -0
- data/lib/hanzoai/models/document_view.rb +321 -0
- data/lib/hanzoai/models/domain_add_in.rb +231 -0
- data/lib/hanzoai/models/domain_view.rb +303 -0
- data/lib/hanzoai/models/drift_board.rb +233 -0
- data/lib/hanzoai/models/drift_flag.rb +241 -0
- data/lib/hanzoai/models/drift_tally.rb +241 -0
- data/lib/hanzoai/models/dropped.rb +241 -0
- data/lib/hanzoai/models/durable.rb +321 -0
- data/lib/hanzoai/models/edge_state.rb +285 -0
- data/lib/hanzoai/models/ein.rb +283 -0
- data/lib/hanzoai/models/ein_in.rb +241 -0
- data/lib/hanzoai/models/embed_status_resp.rb +271 -0
- data/lib/hanzoai/models/enable_resp.rb +251 -0
- data/lib/hanzoai/models/enablement_board.rb +245 -0
- data/lib/hanzoai/models/enablement_opt_ref.rb +231 -0
- data/lib/hanzoai/models/end_in.rb +231 -0
- data/lib/hanzoai/models/endpoint.rb +323 -0
- data/lib/hanzoai/models/endpoint_list.rb +223 -0
- data/lib/hanzoai/models/endpoint_req.rb +241 -0
- data/lib/hanzoai/models/endpoint_view.rb +241 -0
- data/lib/hanzoai/models/engine_advertisement.rb +255 -0
- data/lib/hanzoai/models/engine_status.rb +231 -0
- data/lib/hanzoai/models/enroll_input.rb +251 -0
- data/lib/hanzoai/models/enroll_req.rb +291 -0
- data/lib/hanzoai/models/enroll_result.rb +251 -0
- data/lib/hanzoai/models/enrollment.rb +301 -0
- data/lib/hanzoai/models/enrollment_list.rb +223 -0
- data/lib/hanzoai/models/enrolment.rb +301 -0
- data/lib/hanzoai/models/entitlements_view.rb +223 -0
- data/lib/hanzoai/models/entry.rb +401 -0
- data/lib/hanzoai/models/env_var_json.rb +241 -0
- data/lib/hanzoai/models/environment_board.rb +223 -0
- data/lib/hanzoai/models/environment_row.rb +273 -0
- data/lib/hanzoai/models/error_list.rb +223 -0
- data/lib/hanzoai/models/esign_complete_in.rb +221 -0
- data/lib/hanzoai/models/esign_completion.rb +241 -0
- data/lib/hanzoai/models/esign_document.rb +345 -0
- data/lib/hanzoai/models/esign_documents.rb +223 -0
- data/lib/hanzoai/models/esign_event.rb +271 -0
- data/lib/hanzoai/models/esign_field.rb +321 -0
- data/lib/hanzoai/models/esign_field_in.rb +291 -0
- data/lib/hanzoai/models/esign_health.rb +231 -0
- data/lib/hanzoai/models/esign_insertion.rb +231 -0
- data/lib/hanzoai/models/esign_invite.rb +261 -0
- data/lib/hanzoai/models/esign_link.rb +261 -0
- data/lib/hanzoai/models/esign_links.rb +243 -0
- data/lib/hanzoai/models/esign_out.rb +241 -0
- data/lib/hanzoai/models/esign_pdf.rb +261 -0
- data/lib/hanzoai/models/esign_placement.rb +251 -0
- data/lib/hanzoai/models/esign_recipient.rb +311 -0
- data/lib/hanzoai/models/esign_recipient_in.rb +251 -0
- data/lib/hanzoai/models/esign_reject_in.rb +221 -0
- data/lib/hanzoai/models/esign_rejection.rb +231 -0
- data/lib/hanzoai/models/esign_session.rb +253 -0
- data/lib/hanzoai/models/esign_signer.rb +261 -0
- data/lib/hanzoai/models/esign_state.rb +241 -0
- data/lib/hanzoai/models/esign_trail.rb +233 -0
- data/lib/hanzoai/models/esign_upload_in.rb +271 -0
- data/lib/hanzoai/models/esign_value_in.rb +231 -0
- data/lib/hanzoai/models/evaluate_in.rb +241 -0
- data/lib/hanzoai/models/evaluator_list.rb +223 -0
- data/lib/hanzoai/models/evaluator_req.rb +268 -0
- data/lib/hanzoai/models/evaluator_view.rb +271 -0
- data/lib/hanzoai/models/event.rb +258 -0
- data/lib/hanzoai/models/event_in.rb +251 -0
- data/lib/hanzoai/models/event_list.rb +223 -0
- data/lib/hanzoai/models/event_view.rb +281 -0
- data/lib/hanzoai/models/exception.rb +258 -0
- data/lib/hanzoai/models/exec_request.rb +273 -0
- data/lib/hanzoai/models/exec_result.rb +241 -0
- data/lib/hanzoai/models/experiment_list.rb +233 -0
- data/lib/hanzoai/models/extracted.rb +293 -0
- data/lib/hanzoai/models/faq_list.rb +223 -0
- data/lib/hanzoai/models/field.rb +231 -0
- data/lib/hanzoai/models/figure.rb +241 -0
- data/lib/hanzoai/models/file_content.rb +251 -0
- data/lib/hanzoai/models/file_input.rb +231 -0
- data/lib/hanzoai/models/file_json.rb +261 -0
- data/lib/hanzoai/models/files_json.rb +233 -0
- data/lib/hanzoai/models/filing.rb +261 -0
- data/lib/hanzoai/models/filing_page.rb +233 -0
- data/lib/hanzoai/models/filing_reply.rb +231 -0
- data/lib/hanzoai/models/filing_request.rb +233 -0
- data/lib/hanzoai/models/filters.rb +247 -0
- data/lib/hanzoai/models/finance_ledger_entry.rb +274 -0
- data/lib/hanzoai/models/financial_package.rb +293 -0
- data/lib/hanzoai/models/finding_list.rb +223 -0
- data/lib/hanzoai/models/finding_view.rb +311 -0
- data/lib/hanzoai/models/fleet_board.rb +223 -0
- data/lib/hanzoai/models/fleet_metrics.rb +261 -0
- data/lib/hanzoai/models/fleet_spec.rb +271 -0
- data/lib/hanzoai/models/fleet_summary.rb +231 -0
- data/lib/hanzoai/models/fleet_unit.rb +321 -0
- data/lib/hanzoai/models/flow.rb +294 -0
- data/lib/hanzoai/models/flow_action.rb +275 -0
- data/lib/hanzoai/models/flow_create.rb +241 -0
- data/lib/hanzoai/models/flow_page.rb +223 -0
- data/lib/hanzoai/models/flow_run.rb +251 -0
- data/lib/hanzoai/models/flow_status.rb +231 -0
- data/lib/hanzoai/models/flow_trigger.rb +275 -0
- data/lib/hanzoai/models/flow_update.rb +261 -0
- data/lib/hanzoai/models/flow_version.rb +292 -0
- data/lib/hanzoai/models/fn_list.rb +223 -0
- data/lib/hanzoai/models/form.rb +251 -0
- data/lib/hanzoai/models/formation.rb +407 -0
- data/lib/hanzoai/models/formation_view.rb +233 -0
- data/lib/hanzoai/models/founder.rb +271 -0
- data/lib/hanzoai/models/founders_in.rb +223 -0
- data/lib/hanzoai/models/frame.rb +247 -0
- data/lib/hanzoai/models/framework_list.rb +223 -0
- data/lib/hanzoai/models/framework_row.rb +281 -0
- data/lib/hanzoai/models/function_detail.rb +391 -0
- data/lib/hanzoai/models/function_view.rb +371 -0
- data/lib/hanzoai/models/funnel.rb +281 -0
- data/lib/hanzoai/models/fusion.rb +265 -0
- data/lib/hanzoai/models/gc_out.rb +241 -0
- data/lib/hanzoai/models/generate_input.rb +331 -0
- data/lib/hanzoai/models/generate_request.rb +233 -0
- data/lib/hanzoai/models/generate_result.rb +241 -0
- data/lib/hanzoai/models/genesis.rb +281 -0
- data/lib/hanzoai/models/git_ops_app.rb +363 -0
- data/lib/hanzoai/models/git_ops_deploy.rb +261 -0
- data/lib/hanzoai/models/git_ops_operation.rb +261 -0
- data/lib/hanzoai/models/git_ops_plane.rb +243 -0
- data/lib/hanzoai/models/git_origin.rb +231 -0
- data/lib/hanzoai/models/git_source.rb +241 -0
- data/lib/hanzoai/models/github_backfill_in.rb +221 -0
- data/lib/hanzoai/models/github_backfill_result.rb +271 -0
- data/lib/hanzoai/models/github_claim_in.rb +233 -0
- data/lib/hanzoai/models/github_claim_out.rb +235 -0
- data/lib/hanzoai/models/github_fork_out.rb +261 -0
- data/lib/hanzoai/models/github_fork_req.rb +231 -0
- data/lib/hanzoai/models/github_import_in.rb +233 -0
- data/lib/hanzoai/models/github_import_out.rb +233 -0
- data/lib/hanzoai/models/github_installation_view.rb +261 -0
- data/lib/hanzoai/models/github_installations_out.rb +233 -0
- data/lib/hanzoai/models/github_pages_build_out.rb +241 -0
- data/lib/hanzoai/models/github_pages_disabled_out.rb +231 -0
- data/lib/hanzoai/models/github_pages_enable_req.rb +251 -0
- data/lib/hanzoai/models/github_pages_source.rb +231 -0
- data/lib/hanzoai/models/github_pages_update_req.rb +271 -0
- data/lib/hanzoai/models/github_pages_updated_out.rb +231 -0
- data/lib/hanzoai/models/github_pages_view.rb +291 -0
- data/lib/hanzoai/models/github_repo_view.rb +291 -0
- data/lib/hanzoai/models/github_repos_out.rb +235 -0
- data/lib/hanzoai/models/github_search_hit.rb +291 -0
- data/lib/hanzoai/models/github_search_out.rb +233 -0
- data/lib/hanzoai/models/github_search_req.rb +231 -0
- data/lib/hanzoai/models/gitlab_project_view.rb +291 -0
- data/lib/hanzoai/models/gitlab_projects_out.rb +233 -0
- data/lib/hanzoai/models/gl_row.rb +301 -0
- data/lib/hanzoai/models/gpu.rb +241 -0
- data/lib/hanzoai/models/gpu_alert_list.rb +223 -0
- data/lib/hanzoai/models/gpu_job.rb +341 -0
- data/lib/hanzoai/models/gpu_list.rb +223 -0
- data/lib/hanzoai/models/gpu_view.rb +301 -0
- data/lib/hanzoai/models/graph_assert_in.rb +223 -0
- data/lib/hanzoai/models/graph_assert_out.rb +253 -0
- data/lib/hanzoai/models/graph_edge.rb +241 -0
- data/lib/hanzoai/models/graph_fact.rb +301 -0
- data/lib/hanzoai/models/graph_neighbors_in.rb +263 -0
- data/lib/hanzoai/models/graph_neighbors_out.rb +253 -0
- data/lib/hanzoai/models/graph_node.rb +261 -0
- data/lib/hanzoai/models/graph_out.rb +245 -0
- data/lib/hanzoai/models/graph_ql_error.rb +231 -0
- data/lib/hanzoai/models/graph_ql_out.rb +232 -0
- data/lib/hanzoai/models/graph_qlin.rb +239 -0
- data/lib/hanzoai/models/graph_read_out.rb +223 -0
- data/lib/hanzoai/models/graph_resolve_in.rb +241 -0
- data/lib/hanzoai/models/graph_resolve_out.rb +293 -0
- data/lib/hanzoai/models/graph_vocabulary_out.rb +245 -0
- data/lib/hanzoai/models/handle_request.rb +221 -0
- data/lib/hanzoai/models/handle_set.rb +221 -0
- data/lib/hanzoai/models/health.rb +231 -0
- data/lib/hanzoai/models/health_lens.rb +231 -0
- data/lib/hanzoai/models/health_lenses.rb +231 -0
- data/lib/hanzoai/models/health_out.rb +231 -0
- data/lib/hanzoai/models/health_plane.rb +251 -0
- data/lib/hanzoai/models/health_report.rb +291 -0
- data/lib/hanzoai/models/health_view.rb +231 -0
- data/lib/hanzoai/models/help_article.rb +271 -0
- data/lib/hanzoai/models/help_article_card.rb +261 -0
- data/lib/hanzoai/models/help_article_list.rb +223 -0
- data/lib/hanzoai/models/help_category.rb +231 -0
- data/lib/hanzoai/models/help_category_list.rb +223 -0
- data/lib/hanzoai/models/help_ticket_filed.rb +231 -0
- data/lib/hanzoai/models/help_ticket_intake.rb +251 -0
- data/lib/hanzoai/models/history_out.rb +243 -0
- data/lib/hanzoai/models/hit.rb +281 -0
- data/lib/hanzoai/models/holder.rb +256 -0
- data/lib/hanzoai/models/holding.rb +293 -0
- data/lib/hanzoai/models/holdings.rb +223 -0
- data/lib/hanzoai/models/iam_account_body.rb +247 -0
- data/lib/hanzoai/models/iam_account_item.rb +265 -0
- data/lib/hanzoai/models/iam_address.rb +274 -0
- data/lib/hanzoai/models/iam_answer.rb +283 -0
- data/lib/hanzoai/models/iam_application.rb +1048 -0
- data/lib/hanzoai/models/iam_application_list_result.rb +222 -0
- data/lib/hanzoai/models/iam_assume_body.rb +220 -0
- data/lib/hanzoai/models/iam_audit_log.rb +373 -0
- data/lib/hanzoai/models/iam_bulk.rb +238 -0
- data/lib/hanzoai/models/iam_cart_item.rb +256 -0
- data/lib/hanzoai/models/iam_cert.rb +391 -0
- data/lib/hanzoai/models/iam_certs_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_certs_list_output.rb +231 -0
- data/lib/hanzoai/models/iam_config.rb +296 -0
- data/lib/hanzoai/models/iam_consent_record.rb +231 -0
- data/lib/hanzoai/models/iam_create_input.rb +229 -0
- data/lib/hanzoai/models/iam_create_organization_input.rb +782 -0
- data/lib/hanzoai/models/iam_create_session_in.rb +309 -0
- data/lib/hanzoai/models/iam_delete_organization_output.rb +220 -0
- data/lib/hanzoai/models/iam_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_delete_response.rb +220 -0
- data/lib/hanzoai/models/iam_delete_result.rb +220 -0
- data/lib/hanzoai/models/iam_delete_session_out.rb +220 -0
- data/lib/hanzoai/models/iam_face_id.rb +240 -0
- data/lib/hanzoai/models/iam_filter.rb +229 -0
- data/lib/hanzoai/models/iam_input.rb +337 -0
- data/lib/hanzoai/models/iam_invitation.rb +391 -0
- data/lib/hanzoai/models/iam_invitations_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_invitations_input.rb +355 -0
- data/lib/hanzoai/models/iam_invitations_list_output.rb +231 -0
- data/lib/hanzoai/models/iam_jwt_item.rb +247 -0
- data/lib/hanzoai/models/iam_key.rb +400 -0
- data/lib/hanzoai/models/iam_list_organizations_output.rb +231 -0
- data/lib/hanzoai/models/iam_list_output.rb +231 -0
- data/lib/hanzoai/models/iam_list_providers_out.rb +222 -0
- data/lib/hanzoai/models/iam_list_response.rb +260 -0
- data/lib/hanzoai/models/iam_list_sessions_out.rb +222 -0
- data/lib/hanzoai/models/iam_list_tokens_out.rb +222 -0
- data/lib/hanzoai/models/iam_list_webauthn_credentials_out.rb +222 -0
- data/lib/hanzoai/models/iam_managed_account.rb +238 -0
- data/lib/hanzoai/models/iam_mfa_account.rb +238 -0
- data/lib/hanzoai/models/iam_mfa_item.rb +229 -0
- data/lib/hanzoai/models/iam_mfa_props.rb +265 -0
- data/lib/hanzoai/models/iam_mutation_result.rb +229 -0
- data/lib/hanzoai/models/iam_organization.rb +786 -0
- data/lib/hanzoai/models/iam_password_body.rb +261 -0
- data/lib/hanzoai/models/iam_permission.rb +444 -0
- data/lib/hanzoai/models/iam_permission_delete_response.rb +220 -0
- data/lib/hanzoai/models/iam_permission_list_response.rb +222 -0
- data/lib/hanzoai/models/iam_person.rb +283 -0
- data/lib/hanzoai/models/iam_project.rb +339 -0
- data/lib/hanzoai/models/iam_projects_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_projects_input.rb +303 -0
- data/lib/hanzoai/models/iam_projects_list_output.rb +231 -0
- data/lib/hanzoai/models/iam_provider.rb +647 -0
- data/lib/hanzoai/models/iam_provider_item.rb +314 -0
- data/lib/hanzoai/models/iam_provider_result.rb +220 -0
- data/lib/hanzoai/models/iam_registration.rb +336 -0
- data/lib/hanzoai/models/iam_reply.rb +247 -0
- data/lib/hanzoai/models/iam_role.rb +345 -0
- data/lib/hanzoai/models/iam_roles_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_roles_input.rb +309 -0
- data/lib/hanzoai/models/iam_roles_list_output.rb +231 -0
- data/lib/hanzoai/models/iam_saml_item.rb +238 -0
- data/lib/hanzoai/models/iam_scheme.rb +247 -0
- data/lib/hanzoai/models/iam_scope_description.rb +238 -0
- data/lib/hanzoai/models/iam_scope_item.rb +249 -0
- data/lib/hanzoai/models/iam_session.rb +304 -0
- data/lib/hanzoai/models/iam_set_avatar_input.rb +247 -0
- data/lib/hanzoai/models/iam_signin_item.rb +274 -0
- data/lib/hanzoai/models/iam_signin_method.rb +238 -0
- data/lib/hanzoai/models/iam_signup_item.rb +312 -0
- data/lib/hanzoai/models/iam_theme_data.rb +256 -0
- data/lib/hanzoai/models/iam_toggle.rb +220 -0
- data/lib/hanzoai/models/iam_token.rb +486 -0
- data/lib/hanzoai/models/iam_token_mutation.rb +229 -0
- data/lib/hanzoai/models/iam_token_result.rb +220 -0
- data/lib/hanzoai/models/iam_update_input.rb +229 -0
- data/lib/hanzoai/models/iam_update_organization_input.rb +782 -0
- data/lib/hanzoai/models/iam_update_session_in.rb +300 -0
- data/lib/hanzoai/models/iam_user.rb +1936 -0
- data/lib/hanzoai/models/iam_users_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_users_list_output.rb +231 -0
- data/lib/hanzoai/models/iam_webauthn_credential.rb +403 -0
- data/lib/hanzoai/models/iam_webauthn_credential_mutation_result.rb +229 -0
- data/lib/hanzoai/models/iam_webauthn_credential_result.rb +220 -0
- data/lib/hanzoai/models/iam_workspace.rb +339 -0
- data/lib/hanzoai/models/iam_workspaces_delete_output.rb +220 -0
- data/lib/hanzoai/models/iam_workspaces_input.rb +303 -0
- data/lib/hanzoai/models/iam_workspaces_list_output.rb +231 -0
- data/lib/hanzoai/models/image_origin.rb +231 -0
- data/lib/hanzoai/models/image_view.rb +231 -0
- data/lib/hanzoai/models/import_cap_table_in.rb +231 -0
- data/lib/hanzoai/models/import_cap_table_out.rb +241 -0
- data/lib/hanzoai/models/import_documents_in.rb +221 -0
- data/lib/hanzoai/models/import_documents_out.rb +231 -0
- data/lib/hanzoai/models/inbox_item.rb +291 -0
- data/lib/hanzoai/models/inbox_out.rb +223 -0
- data/lib/hanzoai/models/inbox_page.rb +233 -0
- data/lib/hanzoai/models/inbox_view.rb +311 -0
- data/lib/hanzoai/models/index.rb +260 -0
- data/lib/hanzoai/models/index_count.rb +231 -0
- data/lib/hanzoai/models/index_documents.rb +253 -0
- data/lib/hanzoai/models/index_enqueued.rb +261 -0
- data/lib/hanzoai/models/index_filter.rb +223 -0
- data/lib/hanzoai/models/index_health.rb +221 -0
- data/lib/hanzoai/models/index_hits.rb +273 -0
- data/lib/hanzoai/models/index_in.rb +243 -0
- data/lib/hanzoai/models/index_list.rb +253 -0
- data/lib/hanzoai/models/index_new.rb +231 -0
- data/lib/hanzoai/models/index_query.rb +251 -0
- data/lib/hanzoai/models/index_result.rb +301 -0
- data/lib/hanzoai/models/index_settings.rb +223 -0
- data/lib/hanzoai/models/index_stats.rb +233 -0
- data/lib/hanzoai/models/index_task.rb +271 -0
- data/lib/hanzoai/models/index_version.rb +241 -0
- data/lib/hanzoai/models/index_view.rb +251 -0
- data/lib/hanzoai/models/indexer_view.rb +281 -0
- data/lib/hanzoai/models/indexers_out.rb +223 -0
- data/lib/hanzoai/models/info_out.rb +271 -0
- data/lib/hanzoai/models/ingest_req.rb +412 -0
- data/lib/hanzoai/models/ingest_resp.rb +243 -0
- data/lib/hanzoai/models/ingress_middlewares.rb +223 -0
- data/lib/hanzoai/models/ingress_routes.rb +223 -0
- data/lib/hanzoai/models/ingress_services.rb +223 -0
- data/lib/hanzoai/models/ingress_status.rb +301 -0
- data/lib/hanzoai/models/ingress_tls.rb +283 -0
- data/lib/hanzoai/models/insights_body.rb +269 -0
- data/lib/hanzoai/models/insights_event.rb +258 -0
- data/lib/hanzoai/models/insights_status.rb +241 -0
- data/lib/hanzoai/models/install.rb +242 -0
- data/lib/hanzoai/models/install_req.rb +221 -0
- data/lib/hanzoai/models/install_state.rb +231 -0
- data/lib/hanzoai/models/invocation_list.rb +223 -0
- data/lib/hanzoai/models/invocation_view.rb +271 -0
- data/lib/hanzoai/models/invoice.rb +333 -0
- data/lib/hanzoai/models/invoice_line.rb +251 -0
- data/lib/hanzoai/models/invoice_line_item.rb +320 -0
- data/lib/hanzoai/models/invoices.rb +231 -0
- data/lib/hanzoai/models/invoke_req.rb +221 -0
- data/lib/hanzoai/models/issue_edit.rb +271 -0
- data/lib/hanzoai/models/issue_hit.rb +321 -0
- data/lib/hanzoai/models/issue_hits.rb +233 -0
- data/lib/hanzoai/models/issue_view.rb +393 -0
- data/lib/hanzoai/models/item_list.rb +223 -0
- data/lib/hanzoai/models/item_req.rb +263 -0
- data/lib/hanzoai/models/item_result.rb +261 -0
- data/lib/hanzoai/models/item_view.rb +293 -0
- data/lib/hanzoai/models/job_cancel.rb +241 -0
- data/lib/hanzoai/models/job_canceled.rb +231 -0
- data/lib/hanzoai/models/job_list.rb +223 -0
- data/lib/hanzoai/models/journey_step.rb +325 -0
- data/lib/hanzoai/models/judge_spec.rb +241 -0
- data/lib/hanzoai/models/kb_authorize_out.rb +221 -0
- data/lib/hanzoai/models/kb_connectors_out.rb +223 -0
- data/lib/hanzoai/models/kb_sync_out.rb +231 -0
- data/lib/hanzoai/models/key_list.rb +223 -0
- data/lib/hanzoai/models/key_type_in.rb +233 -0
- data/lib/hanzoai/models/key_view.rb +261 -0
- data/lib/hanzoai/models/kit_list.rb +223 -0
- data/lib/hanzoai/models/kms_config.rb +251 -0
- data/lib/hanzoai/models/kms_health.rb +261 -0
- data/lib/hanzoai/models/kms_login.rb +231 -0
- data/lib/hanzoai/models/kms_put.rb +251 -0
- data/lib/hanzoai/models/kms_secrets.rb +245 -0
- data/lib/hanzoai/models/kms_stored.rb +241 -0
- data/lib/hanzoai/models/kms_token.rb +241 -0
- data/lib/hanzoai/models/kv_ack.rb +221 -0
- data/lib/hanzoai/models/kv_entry.rb +261 -0
- data/lib/hanzoai/models/kv_page.rb +223 -0
- data/lib/hanzoai/models/kv_write.rb +241 -0
- data/lib/hanzoai/models/kyc_refresh_out.rb +231 -0
- data/lib/hanzoai/models/kyc_session.rb +251 -0
- data/lib/hanzoai/models/kyc_start_out.rb +243 -0
- data/lib/hanzoai/models/last_event_view.rb +261 -0
- data/lib/hanzoai/models/latency_stat.rb +251 -0
- data/lib/hanzoai/models/leader_row.rb +341 -0
- data/lib/hanzoai/models/leaderboard.rb +233 -0
- data/lib/hanzoai/models/leaderboard_row.rb +261 -0
- data/lib/hanzoai/models/leaderboard_view.rb +323 -0
- data/lib/hanzoai/models/lease_in.rb +261 -0
- data/lib/hanzoai/models/leased.rb +261 -0
- data/lib/hanzoai/models/leg.rb +241 -0
- data/lib/hanzoai/models/legal_filing.rb +294 -0
- data/lib/hanzoai/models/legal_health.rb +231 -0
- data/lib/hanzoai/models/legal_signer.rb +229 -0
- data/lib/hanzoai/models/legal_template.rb +285 -0
- data/lib/hanzoai/models/level_view.rb +241 -0
- data/lib/hanzoai/models/licensing_device_signals.rb +292 -0
- data/lib/hanzoai/models/licensing_fingerprint_request.rb +221 -0
- data/lib/hanzoai/models/licensing_fingerprint_response.rb +231 -0
- data/lib/hanzoai/models/licensing_health_view.rb +251 -0
- data/lib/hanzoai/models/licensing_issue_request.rb +288 -0
- data/lib/hanzoai/models/licensing_issue_response.rb +283 -0
- data/lib/hanzoai/models/licensing_jwk.rb +251 -0
- data/lib/hanzoai/models/licensing_pubkey_view.rb +273 -0
- data/lib/hanzoai/models/licensing_release.rb +332 -0
- data/lib/hanzoai/models/licensing_release_asset.rb +248 -0
- data/lib/hanzoai/models/licensing_release_list.rb +223 -0
- data/lib/hanzoai/models/licensing_revocation_entry.rb +256 -0
- data/lib/hanzoai/models/licensing_revoke_request.rb +275 -0
- data/lib/hanzoai/models/licensing_revoke_response.rb +231 -0
- data/lib/hanzoai/models/licensing_verify_request.rb +248 -0
- data/lib/hanzoai/models/licensing_verify_response.rb +303 -0
- data/lib/hanzoai/models/limits_block.rb +251 -0
- data/lib/hanzoai/models/limits_view.rb +241 -0
- data/lib/hanzoai/models/line_item.rb +231 -0
- data/lib/hanzoai/models/link.rb +220 -0
- data/lib/hanzoai/models/link_list.rb +235 -0
- data/lib/hanzoai/models/link_mint.rb +221 -0
- data/lib/hanzoai/models/link_view.rb +361 -0
- data/lib/hanzoai/models/list_out.rb +223 -0
- data/lib/hanzoai/models/listing.rb +231 -0
- data/lib/hanzoai/models/listing_page.rb +223 -0
- data/lib/hanzoai/models/liveness.rb +231 -0
- data/lib/hanzoai/models/llm.rb +291 -0
- data/lib/hanzoai/models/llm_overview.rb +321 -0
- data/lib/hanzoai/models/location.rb +241 -0
- data/lib/hanzoai/models/log_body.rb +238 -0
- data/lib/hanzoai/models/log_lines.rb +221 -0
- data/lib/hanzoai/models/loss.rb +231 -0
- data/lib/hanzoai/models/machine_list.rb +223 -0
- data/lib/hanzoai/models/machine_view.rb +351 -0
- data/lib/hanzoai/models/make_in.rb +320 -0
- data/lib/hanzoai/models/market_catalog.rb +223 -0
- data/lib/hanzoai/models/market_item.rb +305 -0
- data/lib/hanzoai/models/mcp_catalog.rb +253 -0
- data/lib/hanzoai/models/mcp_catalog_sync.rb +251 -0
- data/lib/hanzoai/models/mcp_error.rb +239 -0
- data/lib/hanzoai/models/mcp_listing.rb +387 -0
- data/lib/hanzoai/models/mcp_package.rb +261 -0
- data/lib/hanzoai/models/mcp_remote.rb +231 -0
- data/lib/hanzoai/models/mcp_request.rb +250 -0
- data/lib/hanzoai/models/mcp_response.rb +250 -0
- data/lib/hanzoai/models/mcp_server.rb +301 -0
- data/lib/hanzoai/models/mcp_server_list.rb +223 -0
- data/lib/hanzoai/models/meet_health.rb +241 -0
- data/lib/hanzoai/models/memory_entry.rb +291 -0
- data/lib/hanzoai/models/memory_page.rb +223 -0
- data/lib/hanzoai/models/mesh_service_list.rb +223 -0
- data/lib/hanzoai/models/mesh_view.rb +251 -0
- data/lib/hanzoai/models/message_input.rb +253 -0
- data/lib/hanzoai/models/message_list.rb +223 -0
- data/lib/hanzoai/models/metric_body.rb +240 -0
- data/lib/hanzoai/models/metric_list.rb +223 -0
- data/lib/hanzoai/models/metric_row.rb +271 -0
- data/lib/hanzoai/models/metrics.rb +281 -0
- data/lib/hanzoai/models/metrics_response.rb +383 -0
- data/lib/hanzoai/models/metrics_view.rb +243 -0
- data/lib/hanzoai/models/middleware.rb +243 -0
- data/lib/hanzoai/models/minted_key.rb +253 -0
- data/lib/hanzoai/models/mirror_list.rb +223 -0
- data/lib/hanzoai/models/mirror_req.rb +241 -0
- data/lib/hanzoai/models/mirror_target_req.rb +241 -0
- data/lib/hanzoai/models/mirror_target_view.rb +261 -0
- data/lib/hanzoai/models/ml_create.rb +243 -0
- data/lib/hanzoai/models/ml_resource.rb +255 -0
- data/lib/hanzoai/models/ml_resource_list.rb +223 -0
- data/lib/hanzoai/models/mode.rb +247 -0
- data/lib/hanzoai/models/mode_in.rb +220 -0
- data/lib/hanzoai/models/model_history.rb +243 -0
- data/lib/hanzoai/models/model_row.rb +271 -0
- data/lib/hanzoai/models/model_stat.rb +351 -0
- data/lib/hanzoai/models/module_info.rb +231 -0
- data/lib/hanzoai/models/module_list.rb +223 -0
- data/lib/hanzoai/models/module_state.rb +242 -0
- data/lib/hanzoai/models/mutate_req.rb +235 -0
- data/lib/hanzoai/models/my_referral_view.rb +261 -0
- data/lib/hanzoai/models/my_referrals.rb +253 -0
- data/lib/hanzoai/models/namespace_create_in.rb +221 -0
- data/lib/hanzoai/models/network_list.rb +223 -0
- data/lib/hanzoai/models/network_view.rb +251 -0
- data/lib/hanzoai/models/new_issue.rb +261 -0
- data/lib/hanzoai/models/news_item.rb +281 -0
- data/lib/hanzoai/models/news_response.rb +223 -0
- data/lib/hanzoai/models/next_in.rb +261 -0
- data/lib/hanzoai/models/node_list.rb +223 -0
- data/lib/hanzoai/models/node_pool_view.rb +281 -0
- data/lib/hanzoai/models/node_view.rb +285 -0
- data/lib/hanzoai/models/nodes_view.rb +223 -0
- data/lib/hanzoai/models/notify_health.rb +231 -0
- data/lib/hanzoai/models/notify_send.rb +303 -0
- data/lib/hanzoai/models/number.rb +293 -0
- data/lib/hanzoai/models/number_list.rb +223 -0
- data/lib/hanzoai/models/o11y_account.rb +295 -0
- data/lib/hanzoai/models/o11y_account_config.rb +238 -0
- data/lib/hanzoai/models/o11y_add_items_in.rb +233 -0
- data/lib/hanzoai/models/o11y_agent_report.rb +231 -0
- data/lib/hanzoai/models/o11y_aggregate_attribute_response.rb +222 -0
- data/lib/hanzoai/models/o11y_alert.rb +260 -0
- data/lib/hanzoai/models/o11y_alert_status.rb +242 -0
- data/lib/hanzoai/models/o11y_alertmanagertypes_receiver.rb +231 -0
- data/lib/hanzoai/models/o11y_ann_item_list.rb +233 -0
- data/lib/hanzoai/models/o11y_ann_item_view.rb +331 -0
- data/lib/hanzoai/models/o11y_ann_items_created.rb +223 -0
- data/lib/hanzoai/models/o11y_ann_queue_deleted.rb +221 -0
- data/lib/hanzoai/models/o11y_ann_queue_detail_view.rb +305 -0
- data/lib/hanzoai/models/o11y_ann_queue_list.rb +233 -0
- data/lib/hanzoai/models/o11y_ann_queue_view.rb +273 -0
- data/lib/hanzoai/models/o11y_associated_component.rb +230 -0
- data/lib/hanzoai/models/o11y_attribute_key.rb +256 -0
- data/lib/hanzoai/models/o11y_attributes_component_entry.rb +231 -0
- data/lib/hanzoai/models/o11y_authorization.rb +249 -0
- data/lib/hanzoai/models/o11y_availability_point.rb +241 -0
- data/lib/hanzoai/models/o11y_availability_response.rb +264 -0
- data/lib/hanzoai/models/o11y_availability_response_range.rb +230 -0
- data/lib/hanzoai/models/o11y_aws_account_config.rb +222 -0
- data/lib/hanzoai/models/o11y_aws_cloud_watch_logs_subscription.rb +231 -0
- data/lib/hanzoai/models/o11y_aws_cloud_watch_metric_stream_filter.rb +232 -0
- data/lib/hanzoai/models/o11y_aws_connection_artifact.rb +220 -0
- data/lib/hanzoai/models/o11y_aws_integration_config.rb +231 -0
- data/lib/hanzoai/models/o11y_aws_logs_collection_strategy.rb +222 -0
- data/lib/hanzoai/models/o11y_aws_metrics_collection_strategy.rb +223 -0
- data/lib/hanzoai/models/o11y_aws_postable_account_config.rb +231 -0
- data/lib/hanzoai/models/o11y_aws_service_config.rb +229 -0
- data/lib/hanzoai/models/o11y_aws_service_logs_config.rb +231 -0
- data/lib/hanzoai/models/o11y_aws_service_metrics_config.rb +220 -0
- data/lib/hanzoai/models/o11y_aws_telemetry_collection_strategy.rb +241 -0
- data/lib/hanzoai/models/o11y_azure_account_config.rb +231 -0
- data/lib/hanzoai/models/o11y_azure_connection_artifact.rb +229 -0
- data/lib/hanzoai/models/o11y_azure_integration_config.rb +242 -0
- data/lib/hanzoai/models/o11y_azure_logs_collection_strategy.rb +223 -0
- data/lib/hanzoai/models/o11y_azure_service_config.rb +229 -0
- data/lib/hanzoai/models/o11y_azure_service_logs_config.rb +220 -0
- data/lib/hanzoai/models/o11y_azure_service_metrics_config.rb +220 -0
- data/lib/hanzoai/models/o11y_azure_telemetry_collection_strategy.rb +248 -0
- data/lib/hanzoai/models/o11y_basic_auth.rb +268 -0
- data/lib/hanzoai/models/o11y_builder_query.rb +448 -0
- data/lib/hanzoai/models/o11y_channel.rb +275 -0
- data/lib/hanzoai/models/o11y_checks.rb +296 -0
- data/lib/hanzoai/models/o11y_cloud_integration_service.rb +268 -0
- data/lib/hanzoai/models/o11y_cluster_list_record.rb +267 -0
- data/lib/hanzoai/models/o11y_cluster_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_cluster_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_cluster_record.rb +286 -0
- data/lib/hanzoai/models/o11y_clusters.rb +259 -0
- data/lib/hanzoai/models/o11y_collected_log_attribute.rb +238 -0
- data/lib/hanzoai/models/o11y_collected_metric.rb +247 -0
- data/lib/hanzoai/models/o11y_composite_query.rb +293 -0
- data/lib/hanzoai/models/o11y_connection_artifact.rb +239 -0
- data/lib/hanzoai/models/o11y_create_queue_req.rb +243 -0
- data/lib/hanzoai/models/o11y_credentials.rb +248 -0
- data/lib/hanzoai/models/o11y_daemon_set_list_record.rb +312 -0
- data/lib/hanzoai/models/o11y_daemon_set_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_daemon_set_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_daemon_set_record.rb +312 -0
- data/lib/hanzoai/models/o11y_daemon_sets.rb +259 -0
- data/lib/hanzoai/models/o11y_data_collected.rb +233 -0
- data/lib/hanzoai/models/o11y_data_collected_for_integration.rb +233 -0
- data/lib/hanzoai/models/o11y_datastore_query.rb +238 -0
- data/lib/hanzoai/models/o11y_deployment.rb +231 -0
- data/lib/hanzoai/models/o11y_deployment_list_record.rb +312 -0
- data/lib/hanzoai/models/o11y_deployment_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_deployment_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_deployment_record.rb +312 -0
- data/lib/hanzoai/models/o11y_deployments.rb +259 -0
- data/lib/hanzoai/models/o11y_deprecated_gettable_alert.rb +249 -0
- data/lib/hanzoai/models/o11y_discord_config.rb +293 -0
- data/lib/hanzoai/models/o11y_email_config.rb +380 -0
- data/lib/hanzoai/models/o11y_event.rb +249 -0
- data/lib/hanzoai/models/o11y_filter.rb +221 -0
- data/lib/hanzoai/models/o11y_filter_attribute_key_response.rb +222 -0
- data/lib/hanzoai/models/o11y_filter_attribute_value_request.rb +332 -0
- data/lib/hanzoai/models/o11y_filter_attribute_value_response.rb +253 -0
- data/lib/hanzoai/models/o11y_filter_item.rb +238 -0
- data/lib/hanzoai/models/o11y_filter_set.rb +231 -0
- data/lib/hanzoai/models/o11y_flamegraph_span.rb +307 -0
- data/lib/hanzoai/models/o11y_format_options.rb +229 -0
- data/lib/hanzoai/models/o11y_function.rb +242 -0
- data/lib/hanzoai/models/o11y_funnel_step.rb +304 -0
- data/lib/hanzoai/models/o11y_gcp_account_config.rb +243 -0
- data/lib/hanzoai/models/o11y_gcp_service_config.rb +229 -0
- data/lib/hanzoai/models/o11y_gcp_service_logs_config.rb +220 -0
- data/lib/hanzoai/models/o11y_gcp_service_metrics_config.rb +220 -0
- data/lib/hanzoai/models/o11y_gettable_account_with_connection_artifact.rb +230 -0
- data/lib/hanzoai/models/o11y_gettable_accounts.rb +222 -0
- data/lib/hanzoai/models/o11y_gettable_agent_check_in.rb +284 -0
- data/lib/hanzoai/models/o11y_gettable_created_ingestion_key.rb +229 -0
- data/lib/hanzoai/models/o11y_gettable_created_ingestion_key_limit.rb +220 -0
- data/lib/hanzoai/models/o11y_gettable_field_keys.rb +231 -0
- data/lib/hanzoai/models/o11y_gettable_field_values.rb +229 -0
- data/lib/hanzoai/models/o11y_gettable_flamegraph_trace.rb +249 -0
- data/lib/hanzoai/models/o11y_gettable_funnel.rb +312 -0
- data/lib/hanzoai/models/o11y_gettable_host.rb +249 -0
- data/lib/hanzoai/models/o11y_gettable_ingestion_keys.rb +231 -0
- data/lib/hanzoai/models/o11y_gettable_route_policy.rb +315 -0
- data/lib/hanzoai/models/o11y_gettable_rule_state_history.rb +305 -0
- data/lib/hanzoai/models/o11y_gettable_rule_state_history_contributor.rb +258 -0
- data/lib/hanzoai/models/o11y_gettable_rule_state_history_stats.rb +283 -0
- data/lib/hanzoai/models/o11y_gettable_rule_state_timeline.rb +240 -0
- data/lib/hanzoai/models/o11y_gettable_rule_state_window.rb +239 -0
- data/lib/hanzoai/models/o11y_gettable_services_metadata.rb +222 -0
- data/lib/hanzoai/models/o11y_gettable_span_mapper_groups.rb +222 -0
- data/lib/hanzoai/models/o11y_gettable_span_mappers.rb +222 -0
- data/lib/hanzoai/models/o11y_gettable_test_rule.rb +229 -0
- data/lib/hanzoai/models/o11y_gettable_trace_aggregations.rb +222 -0
- data/lib/hanzoai/models/o11y_gettable_waterfall_trace.rb +305 -0
- data/lib/hanzoai/models/o11y_google_chat_receiver_config.rb +257 -0
- data/lib/hanzoai/models/o11y_group_by_key.rb +285 -0
- data/lib/hanzoai/models/o11y_having.rb +238 -0
- data/lib/hanzoai/models/o11y_host.rb +238 -0
- data/lib/hanzoai/models/o11y_host_filter.rb +230 -0
- data/lib/hanzoai/models/o11y_host_list_record.rb +285 -0
- data/lib/hanzoai/models/o11y_host_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_host_list_response.rb +289 -0
- data/lib/hanzoai/models/o11y_host_record.rb +304 -0
- data/lib/hanzoai/models/o11y_hosts.rb +259 -0
- data/lib/hanzoai/models/o11y_http_client_config.rb +340 -0
- data/lib/hanzoai/models/o11y_incidentio_config.rb +287 -0
- data/lib/hanzoai/models/o11y_ingestion_key.rb +296 -0
- data/lib/hanzoai/models/o11y_install_integration_request.rb +231 -0
- data/lib/hanzoai/models/o11y_installed_integration.rb +259 -0
- data/lib/hanzoai/models/o11y_integration.rb +323 -0
- data/lib/hanzoai/models/o11y_integration_assets.rb +242 -0
- data/lib/hanzoai/models/o11y_integration_author.rb +238 -0
- data/lib/hanzoai/models/o11y_integration_config.rb +233 -0
- data/lib/hanzoai/models/o11y_integration_config_step.rb +229 -0
- data/lib/hanzoai/models/o11y_integration_connection_status.rb +229 -0
- data/lib/hanzoai/models/o11y_integration_connection_tests.rb +232 -0
- data/lib/hanzoai/models/o11y_integrations_collected_log_attribute.rb +238 -0
- data/lib/hanzoai/models/o11y_integrations_collected_metric.rb +247 -0
- data/lib/hanzoai/models/o11y_integrations_list_item.rb +265 -0
- data/lib/hanzoai/models/o11y_integrations_list_response.rb +222 -0
- data/lib/hanzoai/models/o11y_item_input.rb +271 -0
- data/lib/hanzoai/models/o11y_jira_config.rb +352 -0
- data/lib/hanzoai/models/o11y_jira_field_config.rb +231 -0
- data/lib/hanzoai/models/o11y_job_list_record.rb +330 -0
- data/lib/hanzoai/models/o11y_job_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_job_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_job_record.rb +330 -0
- data/lib/hanzoai/models/o11y_jobs.rb +259 -0
- data/lib/hanzoai/models/o11y_label.rb +229 -0
- data/lib/hanzoai/models/o11y_limit.rb +286 -0
- data/lib/hanzoai/models/o11y_limit_config.rb +229 -0
- data/lib/hanzoai/models/o11y_limit_metric.rb +229 -0
- data/lib/hanzoai/models/o11y_limit_metric_value.rb +229 -0
- data/lib/hanzoai/models/o11y_limit_value.rb +229 -0
- data/lib/hanzoai/models/o11y_list_meta.rb +251 -0
- data/lib/hanzoai/models/o11y_logs_assets.rb +222 -0
- data/lib/hanzoai/models/o11y_logs_connection_test.rb +229 -0
- data/lib/hanzoai/models/o11y_mattermost_attachment.rb +339 -0
- data/lib/hanzoai/models/o11y_mattermost_config.rb +331 -0
- data/lib/hanzoai/models/o11y_mattermost_field.rb +238 -0
- data/lib/hanzoai/models/o11y_mattermost_priority.rb +238 -0
- data/lib/hanzoai/models/o11y_mattermost_props.rb +220 -0
- data/lib/hanzoai/models/o11y_metrics_component_entry.rb +231 -0
- data/lib/hanzoai/models/o11y_metrics_response.rb +257 -0
- data/lib/hanzoai/models/o11y_metrics_response_range.rb +230 -0
- data/lib/hanzoai/models/o11y_metrics_response_series.rb +256 -0
- data/lib/hanzoai/models/o11y_metrics_response_summary.rb +248 -0
- data/lib/hanzoai/models/o11y_metrics_response_usage.rb +250 -0
- data/lib/hanzoai/models/o11y_missing_attributes_component_entry.rb +249 -0
- data/lib/hanzoai/models/o11y_missing_metrics_component_entry.rb +249 -0
- data/lib/hanzoai/models/o11y_ms_teams_config.rb +275 -0
- data/lib/hanzoai/models/o11y_ms_teams_v2_config.rb +266 -0
- data/lib/hanzoai/models/o11y_namespace_list_record.rb +258 -0
- data/lib/hanzoai/models/o11y_namespace_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_namespace_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_namespace_record.rb +258 -0
- data/lib/hanzoai/models/o11y_namespaces.rb +259 -0
- data/lib/hanzoai/models/o11y_node_count_by_condition.rb +238 -0
- data/lib/hanzoai/models/o11y_node_counts_by_readiness.rb +229 -0
- data/lib/hanzoai/models/o11y_node_list_record.rb +276 -0
- data/lib/hanzoai/models/o11y_node_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_node_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_node_record.rb +295 -0
- data/lib/hanzoai/models/o11y_nodes.rb +259 -0
- data/lib/hanzoai/models/o11y_notifier_config.rb +220 -0
- data/lib/hanzoai/models/o11y_o11y_account_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_accounts_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_ack.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_affected_asset.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_affected_widget.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_agent_check_in_in.rb +259 -0
- data/lib/hanzoai/models/o11y_o11y_agent_check_in_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_aggregate_attributes_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_aggregation.rb +301 -0
- data/lib/hanzoai/models/o11y_o11y_aggregation_meta.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_alerts_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_analyze_in.rb +265 -0
- data/lib/hanzoai/models/o11y_o11y_analyze_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_apdex_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_apdex_set_in.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_apdex_set_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_apdex_settings.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_api_key.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_api_key_create_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_api_key_create_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_api_key_secret.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_api_key_update_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_api_keys_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_attribute_key.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_attribute_keys_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_attribute_mapping.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_attribute_values_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_auth_domain.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_auth_domain_config.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_auth_domain_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_auth_domains_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_auth_n_provider_info.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_auth_n_support.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_bulk_invite_in.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_callback_auth_n.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_change_password_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_channel_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_channel_update_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_channels_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_check_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_cluster_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_column_info.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_connection_status_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_create_account_in.rb +229 -0
- data/lib/hanzoai/models/o11y_o11y_create_account_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_create_limit_in.rb +240 -0
- data/lib/hanzoai/models/o11y_o11y_created.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_created_ingestion_key_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_created_limit_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_created_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_credentials_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_daemon_set_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard.rb +343 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_display.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list.rb +245 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list_for_user.rb +245 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list_for_user_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list_item.rb +343 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list_item_for_user.rb +340 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_list_spec.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_patch_in.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_patch_op.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_postable.rb +273 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_postable_tag.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_tag.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_update_in.rb +269 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_var_values.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_vars_in.rb +250 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_vars_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view_data.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view_list.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view_postable.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_dashboard_view_update_in.rb +239 -0
- data/lib/hanzoai/models/o11y_o11y_dependency.rb +311 -0
- data/lib/hanzoai/models/o11y_o11y_dependency_graph_in.rb +277 -0
- data/lib/hanzoai/models/o11y_o11y_deployment_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_deprecated_user.rb +301 -0
- data/lib/hanzoai/models/o11y_o11y_deprecated_user_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_deprecated_user_update.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_deprecated_users_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_discover_in.rb +314 -0
- data/lib/hanzoai/models/o11y_o11y_discover_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_disk.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_domain_filter.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_domain_group_by.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_domains_answer.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_domains_data.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_domains_in.rb +283 -0
- data/lib/hanzoai/models/o11y_o11y_domains_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_downtime_schedule_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_downtime_schedules_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_downtime_update_in.rb +259 -0
- data/lib/hanzoai/models/o11y_o11y_draft_funnel_in.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_email_password_session_in.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_error_detail.rb +285 -0
- data/lib/hanzoai/models/o11y_o11y_error_gettable_issue.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_error_gettable_issue_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_error_issue.rb +401 -0
- data/lib/hanzoai/models/o11y_o11y_error_issue_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_error_issues.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_error_issues_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_error_item.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_error_update_issue_in.rb +258 -0
- data/lib/hanzoai/models/o11y_o11y_error_with_span.rb +311 -0
- data/lib/hanzoai/models/o11y_o11y_errors_count_in.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_errors_list_in.rb +303 -0
- data/lib/hanzoai/models/o11y_o11y_event.rb +465 -0
- data/lib/hanzoai/models/o11y_o11y_event_in.rb +270 -0
- data/lib/hanzoai/models/o11y_o11y_event_user.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_events.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_feature.rb +283 -0
- data/lib/hanzoai/models/o11y_o11y_features_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_field_catalog_out.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_field_keys_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_field_setting.rb +322 -0
- data/lib/hanzoai/models/o11y_o11y_field_values_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_filter.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_filter_item.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_filter_key.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_filter_set.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_filter_suggestions.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_filter_suggestions_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_forgot_password_in.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_frame.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_create_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_delete_out.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_row.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_rows_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_step_window_in.rb +247 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_steps_update_in.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_update_in.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_funnel_window_in.rb +229 -0
- data/lib/hanzoai/models/o11y_o11y_funnels_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_gettable_host_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_global_config.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_global_config_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_google_config.rb +305 -0
- data/lib/hanzoai/models/o11y_o11y_health_out.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_host_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_ident_n.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_identifiable.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_identifiable_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_attribute_keys_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_attribute_values_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_checks_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_clusters_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_daemon_sets_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_deployments_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_hosts_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_jobs_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_namespaces_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_nodes_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_pods_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_stateful_sets_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_infra_volumes_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_ingestion_keys_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_install_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_integration_ack.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_integration_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_integrations_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_invite.rb +301 -0
- data/lib/hanzoai/models/o11y_o11y_invite_in.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_invite_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_job_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_k8s_onboarding.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_license_active_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_licenses_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_list_error.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_llm_annotation.rb +301 -0
- data/lib/hanzoai/models/o11y_o11y_llm_annotation_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_annotations_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_annotations_page.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_llm_ingest_annotation.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_llm_ingest_score.rb +291 -0
- data/lib/hanzoai/models/o11y_o11y_llm_observation.rb +381 -0
- data/lib/hanzoai/models/o11y_o11y_llm_observations_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_observations_page.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_llm_pricing_cache_costs.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_llm_pricing_rule.rb +363 -0
- data/lib/hanzoai/models/o11y_o11y_llm_pricing_rule_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_pricing_rules_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_pricing_rules_page.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_llm_rule_pricing.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_llm_score.rb +341 -0
- data/lib/hanzoai/models/o11y_o11y_llm_score_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_scores_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_scores_page.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_llm_session.rb +291 -0
- data/lib/hanzoai/models/o11y_o11y_llm_sessions_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_sessions_page.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_llm_trace.rb +311 -0
- data/lib/hanzoai/models/o11y_o11y_llm_traces_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_traces_page.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_llm_updatable_pricing_rule.rb +303 -0
- data/lib/hanzoai/models/o11y_o11y_llm_updatable_pricing_rules.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_llm_user.rb +291 -0
- data/lib/hanzoai/models/o11y_o11y_llm_users_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_llm_users_page.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_log_aggregate_bucket.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_log_aggregate_out.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_log_config_version.rb +351 -0
- data/lib/hanzoai/models/o11y_o11y_log_filter.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_log_filter_item.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_log_filter_key.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_log_parse_from.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline.rb +333 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline_create_in.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline_operator.rb +517 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline_preview.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline_preview_in.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline_preview_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipeline_route.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipelines.rb +375 -0
- data/lib/hanzoai/models/o11y_o11y_log_pipelines_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_log_postable_pipeline.rb +293 -0
- data/lib/hanzoai/models/o11y_o11y_log_promote_index.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_log_promote_out.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_log_promote_path.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_log_promoted_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_log_record.rb +351 -0
- data/lib/hanzoai/models/o11y_o11y_log_records_out.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_logs_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_message.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_metric_ack_out.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_metric_alert.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_alerts.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_metric_alerts_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_attribute.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_metric_attributes.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_metric_attributes_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_dashboards.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_metric_dashboards_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_field.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_metric_filter.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_metric_highlights.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_metric_highlights_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_inspect_in.rb +302 -0
- data/lib/hanzoai/models/o11y_o11y_metric_inspect_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_label.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_list.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_metric_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_metadata.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_metric_metadata_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_metadata_save_in.rb +288 -0
- data/lib/hanzoai/models/o11y_o11y_metric_onboarding.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_metric_onboarding_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_order.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_panel.rb +275 -0
- data/lib/hanzoai/models/o11y_o11y_metric_point.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_metric_series.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_metric_series_set.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_metric_stat.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_metric_stats.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_metric_stats_in.rb +322 -0
- data/lib/hanzoai/models/o11y_o11y_metric_stats_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metric_summary.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_metric_treemap.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_metric_treemap_in.rb +329 -0
- data/lib/hanzoai/models/o11y_o11y_metric_treemap_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_metrics_query_range_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_my_service_account_update_in.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_namespace_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_next_prev_error_ids.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_node_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_object.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_object_group.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_occurrence.rb +395 -0
- data/lib/hanzoai/models/o11y_o11y_occurrence_frame.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_oidc_config.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_onboarding_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_operation.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_operations_in.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_operations_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_org_stats_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_organization.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_organization_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_overall_state_transitions_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_password_auth_n.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_percentile_position.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_percentiles.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_pod_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_pod_onboarding.rb +331 -0
- data/lib/hanzoai/models/o11y_o11y_postable_auth_domain.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_postable_user.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_preference.rb +285 -0
- data/lib/hanzoai/models/o11y_o11y_preference_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_preferences_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_process_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_prom_query_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_prom_result.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_public_dashboard.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_public_dashboard_data.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_public_dashboard_data_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_public_dashboard_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_public_dashboard_v1.rb +301 -0
- data/lib/hanzoai/models/o11y_o11y_public_dashboard_write_in.rb +239 -0
- data/lib/hanzoai/models/o11y_o11y_pvc_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_query_filter_analysis.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_query_range.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_query_range_data.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_query_range_format_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_query_range_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_query_range_preview_in.rb +296 -0
- data/lib/hanzoai/models/o11y_o11y_query_range_preview_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_query_stats.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_query_warning.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_query_warning_note.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_queue_check.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_queue_checks_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_queue_filter_key.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_queue_filter_rule.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_queue_filter_set.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_queue_in.rb +253 -0
- data/lib/hanzoai/models/o11y_o11y_queue_list_in.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_queue_row.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_queue_rows_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_quick_filters_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule.rb +353 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_create_in.rb +294 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_preview.rb +285 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_preview_in.rb +304 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_preview_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rule_save_in.rb +294 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_rules.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_series_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_series_result.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_stats.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_reduction_stats_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_register_in.rb +278 -0
- data/lib/hanzoai/models/o11y_o11y_register_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reset_password_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reset_token.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_reset_token_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_reset_token_ref.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_resource_ref.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_retention_match.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_retention_out.rb +293 -0
- data/lib/hanzoai/models/o11y_o11y_retention_rule.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_retention_set_in.rb +263 -0
- data/lib/hanzoai/models/o11y_o11y_retention_set_out.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_retry.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_role.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_role_create_in.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_role_create_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_role_detail.rb +293 -0
- data/lib/hanzoai/models/o11y_o11y_role_id.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_role_mapping.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_role_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_role_update_in.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_roles_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_rotate_session_in.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_route_policies_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_route_policy_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_route_policy_update_in.rb +270 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_contributors_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_filter_keys_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_filter_values_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_overall_status_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_query_in.rb +274 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_stats_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rule_history_timeline_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rule_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rule_state_contributors_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_rule_state_timeline_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rule_stats_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_rules_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_saml_config.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_saved_view_create_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_saved_view_delete_out.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_saved_view_list_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_saved_view_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_saved_view_update_in.rb +323 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_event_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_issue_events_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_postable_project.rb +258 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_project.rb +291 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_project_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_projects.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_projects_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_sentry_update_issue_in.rb +258 -0
- data/lib/hanzoai/models/o11y_o11y_service.rb +311 -0
- data/lib/hanzoai/models/o11y_o11y_service_account.rb +281 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_create_in.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_create_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_detail.rb +293 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_role.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_role_grant_in.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_roles_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_service_account_update_in.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_service_accounts_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_service_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_service_tag.rb +277 -0
- data/lib/hanzoai/models/o11y_o11y_service_warning.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_services_in.rb +243 -0
- data/lib/hanzoai/models/o11y_o11y_services_metadata_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_services_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_session_context.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_session_context_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_session_org.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_set_role_in.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_signal_filters.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_signal_filters_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_span_mapper_create_in.rb +248 -0
- data/lib/hanzoai/models/o11y_o11y_span_mapper_group_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_span_mapper_group_update_in.rb +238 -0
- data/lib/hanzoai/models/o11y_o11y_span_mapper_groups_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_span_mapper_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_span_mapper_update_in.rb +239 -0
- data/lib/hanzoai/models/o11y_o11y_span_mappers_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_span_percentile.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_span_percentile_in.rb +307 -0
- data/lib/hanzoai/models/o11y_o11y_span_percentile_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_stat.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_stateful_set_list_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_stats.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_stats_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_substitute_vars_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_table.rb +235 -0
- data/lib/hanzoai/models/o11y_o11y_tag_filter.rb +277 -0
- data/lib/hanzoai/models/o11y_o11y_tag_query.rb +277 -0
- data/lib/hanzoai/models/o11y_o11y_telemetry_field.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_test_notification_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_test_notification_result.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_test_rule_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_toggle.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_token.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_token_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_top_level_ops_in.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_trace.rb +261 -0
- data/lib/hanzoai/models/o11y_o11y_trace_aggregations_in.rb +222 -0
- data/lib/hanzoai/models/o11y_o11y_trace_aggregations_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_trace_detail.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_trace_flamegraph_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_trace_flamegraph_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_trace_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_trace_span_window.rb +265 -0
- data/lib/hanzoai/models/o11y_o11y_trace_waterfall_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_trace_waterfall_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_traces.rb +223 -0
- data/lib/hanzoai/models/o11y_o11y_traces_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_transaction.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_transaction_group.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_transaction_result.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_treemap_entry.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_updatable_auth_domain.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_updatable_preference.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_updatable_quick_filters.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_updatable_user.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_update_account_in.rb +220 -0
- data/lib/hanzoai/models/o11y_o11y_update_ingestion_key_in.rb +240 -0
- data/lib/hanzoai/models/o11y_o11y_update_limit_in.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_update_service_in.rb +220 -0
- data/lib/hanzoai/models/o11y_o11y_usage_item.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_user.rb +291 -0
- data/lib/hanzoai/models/o11y_o11y_user_role.rb +271 -0
- data/lib/hanzoai/models/o11y_o11y_user_update.rb +221 -0
- data/lib/hanzoai/models/o11y_o11y_user_with_roles.rb +303 -0
- data/lib/hanzoai/models/o11y_o11y_user_with_roles_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o11y_users_out.rb +233 -0
- data/lib/hanzoai/models/o11y_o11y_version_out.rb +241 -0
- data/lib/hanzoai/models/o11y_o11y_widget_query_range.rb +251 -0
- data/lib/hanzoai/models/o11y_o11y_widget_query_range_out.rb +231 -0
- data/lib/hanzoai/models/o11y_o_auth2.rb +418 -0
- data/lib/hanzoai/models/o11y_old_aws_collection_strategy.rb +249 -0
- data/lib/hanzoai/models/o11y_old_aws_logs_strategy.rb +222 -0
- data/lib/hanzoai/models/o11y_old_aws_logs_strategy_cloudwatch_logs_subscriptions_inner.rb +229 -0
- data/lib/hanzoai/models/o11y_old_aws_metrics_strategy.rb +222 -0
- data/lib/hanzoai/models/o11y_old_aws_metrics_strategy_cloudwatch_metric_stream_filters_inner.rb +231 -0
- data/lib/hanzoai/models/o11y_ops_genie_config.rb +361 -0
- data/lib/hanzoai/models/o11y_ops_genie_config_responder.rb +249 -0
- data/lib/hanzoai/models/o11y_order_by.rb +229 -0
- data/lib/hanzoai/models/o11y_order_by_key.rb +285 -0
- data/lib/hanzoai/models/o11y_otel_span_ref.rb +238 -0
- data/lib/hanzoai/models/o11y_pagerduty_config.rb +392 -0
- data/lib/hanzoai/models/o11y_pagerduty_image.rb +238 -0
- data/lib/hanzoai/models/o11y_pagerduty_link.rb +229 -0
- data/lib/hanzoai/models/o11y_pagination.rb +247 -0
- data/lib/hanzoai/models/o11y_pod_count_by_phase.rb +256 -0
- data/lib/hanzoai/models/o11y_pod_counts_by_phase.rb +256 -0
- data/lib/hanzoai/models/o11y_pod_list_record.rb +303 -0
- data/lib/hanzoai/models/o11y_pod_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_pod_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_pod_record.rb +313 -0
- data/lib/hanzoai/models/o11y_pods.rb +259 -0
- data/lib/hanzoai/models/o11y_point.rb +231 -0
- data/lib/hanzoai/models/o11y_postable_account_config.rb +248 -0
- data/lib/hanzoai/models/o11y_postable_channel.rb +231 -0
- data/lib/hanzoai/models/o11y_postable_clusters.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_daemon_sets.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_deployments.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_host.rb +220 -0
- data/lib/hanzoai/models/o11y_postable_hosts.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_ingestion_key.rb +240 -0
- data/lib/hanzoai/models/o11y_postable_jobs.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_namespaces.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_nodes.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_pipeline.rb +285 -0
- data/lib/hanzoai/models/o11y_postable_planned_maintenance.rb +259 -0
- data/lib/hanzoai/models/o11y_postable_pods.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_profile.rb +294 -0
- data/lib/hanzoai/models/o11y_postable_route_policy.rb +270 -0
- data/lib/hanzoai/models/o11y_postable_span_mapper_group.rb +238 -0
- data/lib/hanzoai/models/o11y_postable_stateful_sets.rb +276 -0
- data/lib/hanzoai/models/o11y_postable_volumes.rb +276 -0
- data/lib/hanzoai/models/o11y_process_list_record.rb +276 -0
- data/lib/hanzoai/models/o11y_process_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_process_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_prom_query.rb +247 -0
- data/lib/hanzoai/models/o11y_provider_integration_config.rb +238 -0
- data/lib/hanzoai/models/o11y_pushover_config.rb +375 -0
- data/lib/hanzoai/models/o11y_query_envelope.rb +231 -0
- data/lib/hanzoai/models/o11y_query_range_params_v3.rb +277 -0
- data/lib/hanzoai/models/o11y_query_range_request.rb +292 -0
- data/lib/hanzoai/models/o11y_query_warn_data.rb +240 -0
- data/lib/hanzoai/models/o11y_query_warn_data_additional.rb +220 -0
- data/lib/hanzoai/models/o11y_querybuildertypesv5_composite_query.rb +223 -0
- data/lib/hanzoai/models/o11y_querybuildertypesv5_order_by.rb +231 -0
- data/lib/hanzoai/models/o11y_receiver.rb +419 -0
- data/lib/hanzoai/models/o11y_rele_state_item.rb +239 -0
- data/lib/hanzoai/models/o11y_rocketchat_attachment_action.rb +292 -0
- data/lib/hanzoai/models/o11y_rocketchat_attachment_field.rb +238 -0
- data/lib/hanzoai/models/o11y_rocketchat_config.rb +399 -0
- data/lib/hanzoai/models/o11y_rule_state_history.rb +322 -0
- data/lib/hanzoai/models/o11y_rule_state_history_contributor.rb +257 -0
- data/lib/hanzoai/models/o11y_rule_state_timeline.rb +242 -0
- data/lib/hanzoai/models/o11y_saved_view.rb +314 -0
- data/lib/hanzoai/models/o11y_series.rb +244 -0
- data/lib/hanzoai/models/o11y_service.rb +284 -0
- data/lib/hanzoai/models/o11y_service_assets.rb +222 -0
- data/lib/hanzoai/models/o11y_service_config.rb +238 -0
- data/lib/hanzoai/models/o11y_service_dashboard.rb +238 -0
- data/lib/hanzoai/models/o11y_service_metadata.rb +248 -0
- data/lib/hanzoai/models/o11y_service_up.rb +231 -0
- data/lib/hanzoai/models/o11y_sig_v4_config.rb +284 -0
- data/lib/hanzoai/models/o11y_signal_connection_status.rb +231 -0
- data/lib/hanzoai/models/o11y_slack_action.rb +274 -0
- data/lib/hanzoai/models/o11y_slack_config.rb +474 -0
- data/lib/hanzoai/models/o11y_slack_confirmation_field.rb +247 -0
- data/lib/hanzoai/models/o11y_slack_field.rb +238 -0
- data/lib/hanzoai/models/o11y_sns_config.rb +303 -0
- data/lib/hanzoai/models/o11y_span_aggregation.rb +230 -0
- data/lib/hanzoai/models/o11y_span_aggregation_result.rb +241 -0
- data/lib/hanzoai/models/o11y_span_mapper.rb +304 -0
- data/lib/hanzoai/models/o11y_span_mapper_config.rb +222 -0
- data/lib/hanzoai/models/o11y_span_mapper_group.rb +294 -0
- data/lib/hanzoai/models/o11y_span_mapper_group_condition.rb +233 -0
- data/lib/hanzoai/models/o11y_span_mapper_source.rb +249 -0
- data/lib/hanzoai/models/o11y_stateful_set_list_record.rb +312 -0
- data/lib/hanzoai/models/o11y_stateful_set_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_stateful_set_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_stateful_set_record.rb +312 -0
- data/lib/hanzoai/models/o11y_stateful_sets.rb +259 -0
- data/lib/hanzoai/models/o11y_stats.rb +283 -0
- data/lib/hanzoai/models/o11y_status_component.rb +241 -0
- data/lib/hanzoai/models/o11y_status_incident.rb +293 -0
- data/lib/hanzoai/models/o11y_status_maintenance.rb +303 -0
- data/lib/hanzoai/models/o11y_status_result.rb +273 -0
- data/lib/hanzoai/models/o11y_status_summary.rb +277 -0
- data/lib/hanzoai/models/o11y_storable_funnel.rb +314 -0
- data/lib/hanzoai/models/o11y_storable_integration_dashboard.rb +266 -0
- data/lib/hanzoai/models/o11y_supported_signals.rb +229 -0
- data/lib/hanzoai/models/o11y_telegram_config.rb +312 -0
- data/lib/hanzoai/models/o11y_telemetry_field_key.rb +285 -0
- data/lib/hanzoai/models/o11y_telemetry_field_values.rb +255 -0
- data/lib/hanzoai/models/o11y_threading_config.rb +229 -0
- data/lib/hanzoai/models/o11y_time_series.rb +233 -0
- data/lib/hanzoai/models/o11y_tls_config.rb +341 -0
- data/lib/hanzoai/models/o11y_trace_row.rb +261 -0
- data/lib/hanzoai/models/o11y_traces_out.rb +253 -0
- data/lib/hanzoai/models/o11y_uninstall_integration_request.rb +220 -0
- data/lib/hanzoai/models/o11y_updatable_account_config.rb +238 -0
- data/lib/hanzoai/models/o11y_updatable_azure_account_config.rb +222 -0
- data/lib/hanzoai/models/o11y_updatable_gcp_account_config.rb +243 -0
- data/lib/hanzoai/models/o11y_update_item_in.rb +251 -0
- data/lib/hanzoai/models/o11y_update_queue_in.rb +253 -0
- data/lib/hanzoai/models/o11y_usage_bucket.rb +251 -0
- data/lib/hanzoai/models/o11y_user.rb +287 -0
- data/lib/hanzoai/models/o11y_variable_item.rb +230 -0
- data/lib/hanzoai/models/o11y_victor_ops_config.rb +314 -0
- data/lib/hanzoai/models/o11y_volume_list_record.rb +285 -0
- data/lib/hanzoai/models/o11y_volume_list_request.rb +278 -0
- data/lib/hanzoai/models/o11y_volume_list_response.rb +240 -0
- data/lib/hanzoai/models/o11y_volume_record.rb +285 -0
- data/lib/hanzoai/models/o11y_volumes.rb +259 -0
- data/lib/hanzoai/models/o11y_waterfall_span.rb +481 -0
- data/lib/hanzoai/models/o11y_webex_config.rb +257 -0
- data/lib/hanzoai/models/o11y_webhook_config.rb +268 -0
- data/lib/hanzoai/models/o11y_wechat_config.rb +321 -0
- data/lib/hanzoai/models/oauth_bundle_in.rb +241 -0
- data/lib/hanzoai/models/object_item.rb +261 -0
- data/lib/hanzoai/models/object_list.rb +253 -0
- data/lib/hanzoai/models/obligation.rb +301 -0
- data/lib/hanzoai/models/offer.rb +281 -0
- data/lib/hanzoai/models/onboard_req.rb +231 -0
- data/lib/hanzoai/models/onboard_resp.rb +261 -0
- data/lib/hanzoai/models/op.rb +247 -0
- data/lib/hanzoai/models/open_req.rb +261 -0
- data/lib/hanzoai/models/opp_list.rb +223 -0
- data/lib/hanzoai/models/opp_req.rb +291 -0
- data/lib/hanzoai/models/opportunity.rb +311 -0
- data/lib/hanzoai/models/optin_view.rb +231 -0
- data/lib/hanzoai/models/oracle_view.rb +281 -0
- data/lib/hanzoai/models/oracles_out.rb +223 -0
- data/lib/hanzoai/models/order.rb +258 -0
- data/lib/hanzoai/models/org_earning_view.rb +231 -0
- data/lib/hanzoai/models/org_optin_req.rb +231 -0
- data/lib/hanzoai/models/org_optin_view.rb +241 -0
- data/lib/hanzoai/models/org_view.rb +271 -0
- data/lib/hanzoai/models/outcome.rb +301 -0
- data/lib/hanzoai/models/overview.rb +291 -0
- data/lib/hanzoai/models/overview_view.rb +273 -0
- data/lib/hanzoai/models/page.rb +251 -0
- data/lib/hanzoai/models/pages_build_config.rb +241 -0
- data/lib/hanzoai/models/pages_d1_binding.rb +221 -0
- data/lib/hanzoai/models/pages_deploy.rb +220 -0
- data/lib/hanzoai/models/pages_deployment_config.rb +281 -0
- data/lib/hanzoai/models/pages_deployment_configs.rb +231 -0
- data/lib/hanzoai/models/pages_env_var.rb +231 -0
- data/lib/hanzoai/models/pages_kv_binding.rb +221 -0
- data/lib/hanzoai/models/pages_project_create.rb +251 -0
- data/lib/hanzoai/models/pages_r2_binding.rb +221 -0
- data/lib/hanzoai/models/pairing.rb +311 -0
- data/lib/hanzoai/models/pairing_approved.rb +231 -0
- data/lib/hanzoai/models/pairing_queue.rb +223 -0
- data/lib/hanzoai/models/pairing_view.rb +261 -0
- data/lib/hanzoai/models/patch_application_in.rb +251 -0
- data/lib/hanzoai/models/patch_flow_in.rb +261 -0
- data/lib/hanzoai/models/patch_in.rb +231 -0
- data/lib/hanzoai/models/patch_session_in.rb +291 -0
- data/lib/hanzoai/models/patch_sync_in.rb +281 -0
- data/lib/hanzoai/models/patch_target_in.rb +291 -0
- data/lib/hanzoai/models/path_in.rb +231 -0
- data/lib/hanzoai/models/payment_config.rb +256 -0
- data/lib/hanzoai/models/payment_in.rb +251 -0
- data/lib/hanzoai/models/payment_out.rb +261 -0
- data/lib/hanzoai/models/payment_record.rb +291 -0
- data/lib/hanzoai/models/payout.rb +329 -0
- data/lib/hanzoai/models/period_earning_view.rb +241 -0
- data/lib/hanzoai/models/pick_out.rb +233 -0
- data/lib/hanzoai/models/pipeline_board.rb +223 -0
- data/lib/hanzoai/models/pipeline_req.rb +233 -0
- data/lib/hanzoai/models/pipeline_row.rb +271 -0
- data/lib/hanzoai/models/pipeline_view.rb +283 -0
- data/lib/hanzoai/models/plan_entitlements.rb +243 -0
- data/lib/hanzoai/models/plan_health.rb +231 -0
- data/lib/hanzoai/models/plan_info.rb +271 -0
- data/lib/hanzoai/models/plan_list.rb +223 -0
- data/lib/hanzoai/models/plan_region_list.rb +223 -0
- data/lib/hanzoai/models/plan_resolution.rb +263 -0
- data/lib/hanzoai/models/plan_schemas.rb +231 -0
- data/lib/hanzoai/models/plan_tier_list.rb +223 -0
- data/lib/hanzoai/models/plan_tool_list.rb +223 -0
- data/lib/hanzoai/models/plan_vocab.rb +247 -0
- data/lib/hanzoai/models/plugin_deleted.rb +221 -0
- data/lib/hanzoai/models/plugin_mount.rb +243 -0
- data/lib/hanzoai/models/plugin_mount_list.rb +223 -0
- data/lib/hanzoai/models/pn_l.rb +285 -0
- data/lib/hanzoai/models/pn_l_line.rb +251 -0
- data/lib/hanzoai/models/point_view.rb +231 -0
- data/lib/hanzoai/models/policy.rb +317 -0
- data/lib/hanzoai/models/policy_list.rb +223 -0
- data/lib/hanzoai/models/pool_create.rb +291 -0
- data/lib/hanzoai/models/pool_scale.rb +251 -0
- data/lib/hanzoai/models/populated_flow.rb +310 -0
- data/lib/hanzoai/models/position.rb +231 -0
- data/lib/hanzoai/models/post_event_request.rb +107 -0
- data/lib/hanzoai/models/post_list.rb +223 -0
- data/lib/hanzoai/models/prefs_view.rb +231 -0
- data/lib/hanzoai/models/preset.rb +275 -0
- data/lib/hanzoai/models/preset_accepted.rb +251 -0
- data/lib/hanzoai/models/preset_list.rb +223 -0
- data/lib/hanzoai/models/presign_response.rb +251 -0
- data/lib/hanzoai/models/preview_req.rb +251 -0
- data/lib/hanzoai/models/preview_view.rb +251 -0
- data/lib/hanzoai/models/price.rb +241 -0
- data/lib/hanzoai/models/pricing_health.rb +231 -0
- data/lib/hanzoai/models/pricing_model_list.rb +243 -0
- data/lib/hanzoai/models/pricing_plan_list.rb +223 -0
- data/lib/hanzoai/models/pricing_preset_list.rb +223 -0
- data/lib/hanzoai/models/pricing_provider_list.rb +233 -0
- data/lib/hanzoai/models/pricing_region_list.rb +223 -0
- data/lib/hanzoai/models/pricing_sync_out.rb +231 -0
- data/lib/hanzoai/models/pricing_tier_list.rb +223 -0
- data/lib/hanzoai/models/pricing_tool_list.rb +223 -0
- data/lib/hanzoai/models/principle.rb +291 -0
- data/lib/hanzoai/models/product_event.rb +311 -0
- data/lib/hanzoai/models/product_row.rb +251 -0
- data/lib/hanzoai/models/profile_metrics.rb +251 -0
- data/lib/hanzoai/models/profile_response.rb +243 -0
- data/lib/hanzoai/models/program_application.rb +375 -0
- data/lib/hanzoai/models/progress_view.rb +251 -0
- data/lib/hanzoai/models/project_view.rb +271 -0
- data/lib/hanzoai/models/projection_view.rb +233 -0
- data/lib/hanzoai/models/projects_bound_domains.rb +255 -0
- data/lib/hanzoai/models/projects_build_site.rb +251 -0
- data/lib/hanzoai/models/projects_complete.rb +303 -0
- data/lib/hanzoai/models/projects_create.rb +300 -0
- data/lib/hanzoai/models/projects_create_repo.rb +230 -0
- data/lib/hanzoai/models/projects_deploy_site.rb +243 -0
- data/lib/hanzoai/models/projects_deploy_start.rb +231 -0
- data/lib/hanzoai/models/projects_deployment.rb +361 -0
- data/lib/hanzoai/models/projects_domain.rb +283 -0
- data/lib/hanzoai/models/projects_domains.rb +255 -0
- data/lib/hanzoai/models/projects_domains_bind.rb +233 -0
- data/lib/hanzoai/models/projects_file.rb +231 -0
- data/lib/hanzoai/models/projects_fork.rb +251 -0
- data/lib/hanzoai/models/projects_project.rb +473 -0
- data/lib/hanzoai/models/projects_publish.rb +231 -0
- data/lib/hanzoai/models/projects_release.rb +291 -0
- data/lib/hanzoai/models/projects_repo.rb +241 -0
- data/lib/hanzoai/models/projects_site.rb +261 -0
- data/lib/hanzoai/models/projects_site_deploy.rb +273 -0
- data/lib/hanzoai/models/projects_star.rb +221 -0
- data/lib/hanzoai/models/projects_update.rb +332 -0
- data/lib/hanzoai/models/projects_update_repo.rb +230 -0
- data/lib/hanzoai/models/projects_upload_grant.rb +263 -0
- data/lib/hanzoai/models/promo.rb +291 -0
- data/lib/hanzoai/models/promo_list.rb +223 -0
- data/lib/hanzoai/models/promo_status.rb +241 -0
- data/lib/hanzoai/models/promote_req.rb +251 -0
- data/lib/hanzoai/models/prompt_detail.rb +307 -0
- data/lib/hanzoai/models/prompt_list.rb +223 -0
- data/lib/hanzoai/models/prompt_meta.rb +277 -0
- data/lib/hanzoai/models/prompt_req.rb +265 -0
- data/lib/hanzoai/models/prop_spec.rb +257 -0
- data/lib/hanzoai/models/provenance.rb +241 -0
- data/lib/hanzoai/models/provider_breakdown.rb +243 -0
- data/lib/hanzoai/models/provider_info.rb +231 -0
- data/lib/hanzoai/models/provider_row.rb +251 -0
- data/lib/hanzoai/models/provider_view.rb +281 -0
- data/lib/hanzoai/models/provision_request.rb +231 -0
- data/lib/hanzoai/models/provision_result.rb +311 -0
- data/lib/hanzoai/models/provisioned_resource.rb +291 -0
- data/lib/hanzoai/models/provisioned_summary.rb +281 -0
- data/lib/hanzoai/models/publish_input.rb +241 -0
- data/lib/hanzoai/models/publish_kit_in.rb +325 -0
- data/lib/hanzoai/models/publish_req.rb +291 -0
- data/lib/hanzoai/models/publish_result.rb +257 -0
- data/lib/hanzoai/models/published_claim.rb +271 -0
- data/lib/hanzoai/models/pull_list.rb +223 -0
- data/lib/hanzoai/models/pull_view.rb +321 -0
- data/lib/hanzoai/models/purge.rb +241 -0
- data/lib/hanzoai/models/purge_in.rb +243 -0
- data/lib/hanzoai/models/purge_out.rb +221 -0
- data/lib/hanzoai/models/push.rb +256 -0
- data/lib/hanzoai/models/push_file.rb +241 -0
- data/lib/hanzoai/models/push_pusher.rb +229 -0
- data/lib/hanzoai/models/push_repository.rb +229 -0
- data/lib/hanzoai/models/push_req.rb +253 -0
- data/lib/hanzoai/models/push_resp.rb +251 -0
- data/lib/hanzoai/models/put_claims_in.rb +233 -0
- data/lib/hanzoai/models/put_claims_out.rb +233 -0
- data/lib/hanzoai/models/query.rb +271 -0
- data/lib/hanzoai/models/question.rb +271 -0
- data/lib/hanzoai/models/questions_response.rb +223 -0
- data/lib/hanzoai/models/quote.rb +301 -0
- data/lib/hanzoai/models/quote_list.rb +223 -0
- data/lib/hanzoai/models/raise_in.rb +253 -0
- data/lib/hanzoai/models/ran.rb +241 -0
- data/lib/hanzoai/models/range.rb +231 -0
- data/lib/hanzoai/models/rate_card.rb +241 -0
- data/lib/hanzoai/models/reachability.rb +281 -0
- data/lib/hanzoai/models/read_out.rb +223 -0
- data/lib/hanzoai/models/readiness.rb +261 -0
- data/lib/hanzoai/models/reading_req.rb +421 -0
- data/lib/hanzoai/models/reading_view.rb +401 -0
- data/lib/hanzoai/models/readme_json.rb +241 -0
- data/lib/hanzoai/models/receipt.rb +331 -0
- data/lib/hanzoai/models/recharge.rb +243 -0
- data/lib/hanzoai/models/recharged.rb +274 -0
- data/lib/hanzoai/models/reconcile_report.rb +303 -0
- data/lib/hanzoai/models/reconcile_source.rb +241 -0
- data/lib/hanzoai/models/record.rb +241 -0
- data/lib/hanzoai/models/record_in.rb +238 -0
- data/lib/hanzoai/models/record_list.rb +245 -0
- data/lib/hanzoai/models/recording.rb +281 -0
- data/lib/hanzoai/models/redeem_input.rb +231 -0
- data/lib/hanzoai/models/redeem_result.rb +251 -0
- data/lib/hanzoai/models/redemption.rb +261 -0
- data/lib/hanzoai/models/ref_json.rb +231 -0
- data/lib/hanzoai/models/reference_answer.rb +343 -0
- data/lib/hanzoai/models/reference_out.rb +243 -0
- data/lib/hanzoai/models/reference_override.rb +261 -0
- data/lib/hanzoai/models/reference_override_in.rb +241 -0
- data/lib/hanzoai/models/reference_receipt.rb +261 -0
- data/lib/hanzoai/models/reference_set.rb +343 -0
- data/lib/hanzoai/models/reference_sets_out.rb +247 -0
- data/lib/hanzoai/models/reference_source.rb +291 -0
- data/lib/hanzoai/models/reference_taken.rb +281 -0
- data/lib/hanzoai/models/reference_version.rb +261 -0
- data/lib/hanzoai/models/refresh_out.rb +231 -0
- data/lib/hanzoai/models/refresh_reference_in.rb +243 -0
- data/lib/hanzoai/models/refresh_reference_out.rb +253 -0
- data/lib/hanzoai/models/refs_json.rb +245 -0
- data/lib/hanzoai/models/register_counts.rb +233 -0
- data/lib/hanzoai/models/register_key_req.rb +231 -0
- data/lib/hanzoai/models/register_page.rb +253 -0
- data/lib/hanzoai/models/register_req.rb +381 -0
- data/lib/hanzoai/models/register_result.rb +231 -0
- data/lib/hanzoai/models/registrant.rb +331 -0
- data/lib/hanzoai/models/registration.rb +271 -0
- data/lib/hanzoai/models/registration_view.rb +241 -0
- data/lib/hanzoai/models/registry_image.rb +231 -0
- data/lib/hanzoai/models/registry_image_list.rb +233 -0
- data/lib/hanzoai/models/registry_mint.rb +221 -0
- data/lib/hanzoai/models/registry_package.rb +251 -0
- data/lib/hanzoai/models/registry_package_list.rb +223 -0
- data/lib/hanzoai/models/registry_project.rb +241 -0
- data/lib/hanzoai/models/registry_project_list.rb +223 -0
- data/lib/hanzoai/models/registry_status.rb +271 -0
- data/lib/hanzoai/models/registry_tag_list.rb +243 -0
- data/lib/hanzoai/models/registry_token.rb +241 -0
- data/lib/hanzoai/models/release_board.rb +223 -0
- data/lib/hanzoai/models/release_row.rb +271 -0
- data/lib/hanzoai/models/remittance.rb +271 -0
- data/lib/hanzoai/models/renew_req.rb +248 -0
- data/lib/hanzoai/models/renew_result.rb +231 -0
- data/lib/hanzoai/models/replace_kit_in.rb +325 -0
- data/lib/hanzoai/models/replay_body.rb +249 -0
- data/lib/hanzoai/models/repo_list.rb +223 -0
- data/lib/hanzoai/models/repo_tree.rb +233 -0
- data/lib/hanzoai/models/repo_view.rb +353 -0
- data/lib/hanzoai/models/report.rb +265 -0
- data/lib/hanzoai/models/report_out.rb +221 -0
- data/lib/hanzoai/models/report_req.rb +433 -0
- data/lib/hanzoai/models/report_resp.rb +231 -0
- data/lib/hanzoai/models/report_run_in.rb +291 -0
- data/lib/hanzoai/models/request.rb +283 -0
- data/lib/hanzoai/models/resolve_reference_in.rb +235 -0
- data/lib/hanzoai/models/resolve_reference_out.rb +259 -0
- data/lib/hanzoai/models/resource_usage.rb +251 -0
- data/lib/hanzoai/models/responsible.rb +251 -0
- data/lib/hanzoai/models/restart_ref.rb +231 -0
- data/lib/hanzoai/models/restarted.rb +261 -0
- data/lib/hanzoai/models/review_queue.rb +233 -0
- data/lib/hanzoai/models/review_request.rb +273 -0
- data/lib/hanzoai/models/revoke_resp.rb +243 -0
- data/lib/hanzoai/models/revoked_key.rb +231 -0
- data/lib/hanzoai/models/risk_adopt_in.rb +221 -0
- data/lib/hanzoai/models/risk_aggregates.rb +251 -0
- data/lib/hanzoai/models/risk_appetite_in.rb +241 -0
- data/lib/hanzoai/models/risk_band.rb +291 -0
- data/lib/hanzoai/models/risk_catalog.rb +267 -0
- data/lib/hanzoai/models/risk_cause.rb +311 -0
- data/lib/hanzoai/models/risk_dataset.rb +341 -0
- data/lib/hanzoai/models/risk_dataset_disposal.rb +241 -0
- data/lib/hanzoai/models/risk_dataset_list.rb +223 -0
- data/lib/hanzoai/models/risk_dataset_row.rb +273 -0
- data/lib/hanzoai/models/risk_dataset_rows.rb +285 -0
- data/lib/hanzoai/models/risk_dataset_spec.rb +305 -0
- data/lib/hanzoai/models/risk_dataset_versions.rb +233 -0
- data/lib/hanzoai/models/risk_dispose_in.rb +221 -0
- data/lib/hanzoai/models/risk_dispose_out.rb +281 -0
- data/lib/hanzoai/models/risk_event.rb +281 -0
- data/lib/hanzoai/models/risk_hold_in.rb +233 -0
- data/lib/hanzoai/models/risk_hold_out.rb +251 -0
- data/lib/hanzoai/models/risk_label_coverage.rb +363 -0
- data/lib/hanzoai/models/risk_label_event.rb +241 -0
- data/lib/hanzoai/models/risk_label_fact.rb +291 -0
- data/lib/hanzoai/models/risk_label_in.rb +223 -0
- data/lib/hanzoai/models/risk_label_out.rb +273 -0
- data/lib/hanzoai/models/risk_label_record.rb +341 -0
- data/lib/hanzoai/models/risk_label_result.rb +241 -0
- data/lib/hanzoai/models/risk_label_vocabulary.rb +269 -0
- data/lib/hanzoai/models/risk_labels_out.rb +233 -0
- data/lib/hanzoai/models/risk_learn_in.rb +223 -0
- data/lib/hanzoai/models/risk_learn_out.rb +221 -0
- data/lib/hanzoai/models/risk_lineage.rb +351 -0
- data/lib/hanzoai/models/risk_model_feature.rb +301 -0
- data/lib/hanzoai/models/risk_model_state.rb +397 -0
- data/lib/hanzoai/models/risk_model_value.rb +271 -0
- data/lib/hanzoai/models/risk_org_feature.rb +291 -0
- data/lib/hanzoai/models/risk_policy_out.rb +273 -0
- data/lib/hanzoai/models/risk_policy_version.rb +271 -0
- data/lib/hanzoai/models/risk_publish_out.rb +241 -0
- data/lib/hanzoai/models/risk_resolve_in.rb +243 -0
- data/lib/hanzoai/models/risk_resolve_out.rb +263 -0
- data/lib/hanzoai/models/risk_resolved.rb +333 -0
- data/lib/hanzoai/models/risk_score_in.rb +221 -0
- data/lib/hanzoai/models/risk_score_out.rb +315 -0
- data/lib/hanzoai/models/risk_search_in.rb +221 -0
- data/lib/hanzoai/models/risk_search_report.rb +313 -0
- data/lib/hanzoai/models/risk_search_run.rb +241 -0
- data/lib/hanzoai/models/risk_source_coverage.rb +241 -0
- data/lib/hanzoai/models/risk_split_counts.rb +291 -0
- data/lib/hanzoai/models/risk_surface.rb +271 -0
- data/lib/hanzoai/models/risk_topology.rb +271 -0
- data/lib/hanzoai/models/risk_trial.rb +313 -0
- data/lib/hanzoai/models/risk_value.rb +271 -0
- data/lib/hanzoai/models/role_assignment.rb +231 -0
- data/lib/hanzoai/models/role_list.rb +223 -0
- data/lib/hanzoai/models/rollback_req.rb +241 -0
- data/lib/hanzoai/models/rollup.rb +294 -0
- data/lib/hanzoai/models/rollup_allotment.rb +247 -0
- data/lib/hanzoai/models/rollup_balance.rb +238 -0
- data/lib/hanzoai/models/room_work.rb +263 -0
- data/lib/hanzoai/models/root.rb +233 -0
- data/lib/hanzoai/models/round_input.rb +271 -0
- data/lib/hanzoai/models/round_out.rb +221 -0
- data/lib/hanzoai/models/route.rb +283 -0
- data/lib/hanzoai/models/route_candidate.rb +321 -0
- data/lib/hanzoai/models/route_create_in.rb +241 -0
- data/lib/hanzoai/models/route_plan.rb +243 -0
- data/lib/hanzoai/models/routed_run_out.rb +291 -0
- data/lib/hanzoai/models/routed_usage.rb +301 -0
- data/lib/hanzoai/models/router_list.rb +223 -0
- data/lib/hanzoai/models/router_view.rb +251 -0
- data/lib/hanzoai/models/rpc_error.rb +231 -0
- data/lib/hanzoai/models/rpc_in.rb +261 -0
- data/lib/hanzoai/models/rpc_out.rb +251 -0
- data/lib/hanzoai/models/rule.rb +241 -0
- data/lib/hanzoai/models/rule_list.rb +223 -0
- data/lib/hanzoai/models/rule_view.rb +251 -0
- data/lib/hanzoai/models/rules_out.rb +223 -0
- data/lib/hanzoai/models/ruleset.rb +231 -0
- data/lib/hanzoai/models/run_in.rb +253 -0
- data/lib/hanzoai/models/run_list.rb +223 -0
- data/lib/hanzoai/models/run_page.rb +223 -0
- data/lib/hanzoai/models/run_point.rb +261 -0
- data/lib/hanzoai/models/run_record.rb +301 -0
- data/lib/hanzoai/models/run_req.rb +303 -0
- data/lib/hanzoai/models/run_request.rb +295 -0
- data/lib/hanzoai/models/run_resp.rb +241 -0
- data/lib/hanzoai/models/run_summary.rb +293 -0
- data/lib/hanzoai/models/run_view.rb +261 -0
- data/lib/hanzoai/models/runner_build_req.rb +355 -0
- data/lib/hanzoai/models/runner_build_resp.rb +271 -0
- data/lib/hanzoai/models/runs.rb +223 -0
- data/lib/hanzoai/models/s3_health.rb +261 -0
- data/lib/hanzoai/models/safe_in.rb +235 -0
- data/lib/hanzoai/models/safe_out.rb +231 -0
- data/lib/hanzoai/models/safe_proposal.rb +261 -0
- data/lib/hanzoai/models/safe_tx_in.rb +261 -0
- data/lib/hanzoai/models/sample_accepted.rb +221 -0
- data/lib/hanzoai/models/sample_ingest.rb +281 -0
- data/lib/hanzoai/models/sample_list.rb +223 -0
- data/lib/hanzoai/models/sample_req.rb +421 -0
- data/lib/hanzoai/models/sample_view.rb +371 -0
- data/lib/hanzoai/models/sandbox.rb +351 -0
- data/lib/hanzoai/models/sandbox_list.rb +223 -0
- data/lib/hanzoai/models/sbom_health.rb +251 -0
- data/lib/hanzoai/models/sbom_ingest.rb +271 -0
- data/lib/hanzoai/models/sbom_ingested.rb +231 -0
- data/lib/hanzoai/models/scan.rb +231 -0
- data/lib/hanzoai/models/scan_detail.rb +233 -0
- data/lib/hanzoai/models/scan_draft.rb +285 -0
- data/lib/hanzoai/models/scan_list.rb +223 -0
- data/lib/hanzoai/models/scan_view.rb +301 -0
- data/lib/hanzoai/models/schedule_input.rb +231 -0
- data/lib/hanzoai/models/scope.rb +221 -0
- data/lib/hanzoai/models/score_config_list.rb +223 -0
- data/lib/hanzoai/models/score_config_req.rb +280 -0
- data/lib/hanzoai/models/score_config_view.rb +283 -0
- data/lib/hanzoai/models/score_list.rb +223 -0
- data/lib/hanzoai/models/score_req.rb +318 -0
- data/lib/hanzoai/models/score_view.rb +301 -0
- data/lib/hanzoai/models/screen_result.rb +301 -0
- data/lib/hanzoai/models/search_in.rb +253 -0
- data/lib/hanzoai/models/search_out.rb +233 -0
- data/lib/hanzoai/models/search_results.rb +253 -0
- data/lib/hanzoai/models/secret_list.rb +223 -0
- data/lib/hanzoai/models/secret_meta.rb +251 -0
- data/lib/hanzoai/models/secret_view.rb +241 -0
- data/lib/hanzoai/models/section.rb +261 -0
- data/lib/hanzoai/models/section_write.rb +251 -0
- data/lib/hanzoai/models/self_rank.rb +301 -0
- data/lib/hanzoai/models/seo_audit_in.rb +221 -0
- data/lib/hanzoai/models/seo_audit_out.rb +293 -0
- data/lib/hanzoai/models/seo_backlink_in.rb +221 -0
- data/lib/hanzoai/models/seo_backlink_out.rb +301 -0
- data/lib/hanzoai/models/seo_charge.rb +241 -0
- data/lib/hanzoai/models/seo_competitor_in.rb +253 -0
- data/lib/hanzoai/models/seo_competitor_out.rb +243 -0
- data/lib/hanzoai/models/seo_domain.rb +261 -0
- data/lib/hanzoai/models/seo_idea_in.rb +253 -0
- data/lib/hanzoai/models/seo_idea_out.rb +243 -0
- data/lib/hanzoai/models/seo_keyword_in.rb +243 -0
- data/lib/hanzoai/models/seo_keyword_out.rb +233 -0
- data/lib/hanzoai/models/seo_metric.rb +271 -0
- data/lib/hanzoai/models/seo_rank_in.rb +251 -0
- data/lib/hanzoai/models/seo_rank_out.rb +243 -0
- data/lib/hanzoai/models/seo_ranking.rb +271 -0
- data/lib/hanzoai/models/seo_rate_out.rb +223 -0
- data/lib/hanzoai/models/sequence.rb +261 -0
- data/lib/hanzoai/models/sequence_list.rb +223 -0
- data/lib/hanzoai/models/sequence_status.rb +231 -0
- data/lib/hanzoai/models/sequence_view.rb +233 -0
- data/lib/hanzoai/models/sequences.rb +231 -0
- data/lib/hanzoai/models/series_line.rb +233 -0
- data/lib/hanzoai/models/series_point.rb +231 -0
- data/lib/hanzoai/models/session_detail.rb +487 -0
- data/lib/hanzoai/models/session_ended.rb +231 -0
- data/lib/hanzoai/models/session_list.rb +223 -0
- data/lib/hanzoai/models/session_progress.rb +261 -0
- data/lib/hanzoai/models/session_user.rb +273 -0
- data/lib/hanzoai/models/session_view.rb +491 -0
- data/lib/hanzoai/models/set_env_req.rb +243 -0
- data/lib/hanzoai/models/set_reference_in.rb +223 -0
- data/lib/hanzoai/models/set_reference_out.rb +241 -0
- data/lib/hanzoai/models/settings_req.rb +245 -0
- data/lib/hanzoai/models/settings_view.rb +263 -0
- data/lib/hanzoai/models/share_policy.rb +229 -0
- data/lib/hanzoai/models/share_view.rb +261 -0
- data/lib/hanzoai/models/shares_out.rb +223 -0
- data/lib/hanzoai/models/sign_in.rb +231 -0
- data/lib/hanzoai/models/sign_reply.rb +241 -0
- data/lib/hanzoai/models/sign_request.rb +233 -0
- data/lib/hanzoai/models/signature.rb +251 -0
- data/lib/hanzoai/models/signer.rb +231 -0
- data/lib/hanzoai/models/skill.rb +271 -0
- data/lib/hanzoai/models/skill_deleted.rb +221 -0
- data/lib/hanzoai/models/skill_in.rb +241 -0
- data/lib/hanzoai/models/skill_written.rb +221 -0
- data/lib/hanzoai/models/slot_view.rb +331 -0
- data/lib/hanzoai/models/sms.rb +271 -0
- data/lib/hanzoai/models/social_account.rb +271 -0
- data/lib/hanzoai/models/social_account_body.rb +241 -0
- data/lib/hanzoai/models/social_account_write.rb +241 -0
- data/lib/hanzoai/models/social_accounts.rb +223 -0
- data/lib/hanzoai/models/social_post.rb +323 -0
- data/lib/hanzoai/models/social_post_body.rb +263 -0
- data/lib/hanzoai/models/social_post_write.rb +263 -0
- data/lib/hanzoai/models/social_posts.rb +223 -0
- data/lib/hanzoai/models/social_provider.rb +243 -0
- data/lib/hanzoai/models/social_providers.rb +223 -0
- data/lib/hanzoai/models/social_summary.rb +251 -0
- data/lib/hanzoai/models/source.rb +261 -0
- data/lib/hanzoai/models/source_failure.rb +231 -0
- data/lib/hanzoai/models/source_state.rb +251 -0
- data/lib/hanzoai/models/source_tool_list.rb +233 -0
- data/lib/hanzoai/models/sources.rb +231 -0
- data/lib/hanzoai/models/span.rb +311 -0
- data/lib/hanzoai/models/span_body.rb +265 -0
- data/lib/hanzoai/models/spec.rb +263 -0
- data/lib/hanzoai/models/spend.rb +305 -0
- data/lib/hanzoai/models/spend_point.rb +231 -0
- data/lib/hanzoai/models/stage_event.rb +261 -0
- data/lib/hanzoai/models/starter_kit.rb +355 -0
- data/lib/hanzoai/models/state.rb +301 -0
- data/lib/hanzoai/models/state_graph.rb +255 -0
- data/lib/hanzoai/models/stats_out.rb +241 -0
- data/lib/hanzoai/models/stats_sessions.rb +223 -0
- data/lib/hanzoai/models/stats_user.rb +221 -0
- data/lib/hanzoai/models/status_breakdown.rb +241 -0
- data/lib/hanzoai/models/status_counts.rb +241 -0
- data/lib/hanzoai/models/status_view.rb +241 -0
- data/lib/hanzoai/models/step.rb +281 -0
- data/lib/hanzoai/models/step_input.rb +251 -0
- data/lib/hanzoai/models/step_list.rb +223 -0
- data/lib/hanzoai/models/step_settings.rb +258 -0
- data/lib/hanzoai/models/step_view.rb +377 -0
- data/lib/hanzoai/models/stop_in.rb +221 -0
- data/lib/hanzoai/models/stopped.rb +221 -0
- data/lib/hanzoai/models/storefront_result.rb +251 -0
- data/lib/hanzoai/models/strategy.rb +313 -0
- data/lib/hanzoai/models/strategy_view.rb +263 -0
- data/lib/hanzoai/models/stream.rb +251 -0
- data/lib/hanzoai/models/streams.rb +233 -0
- data/lib/hanzoai/models/structure_in.rb +241 -0
- data/lib/hanzoai/models/subdomain_set_in.rb +231 -0
- data/lib/hanzoai/models/subject.rb +291 -0
- data/lib/hanzoai/models/subject_list.rb +223 -0
- data/lib/hanzoai/models/subject_req.rb +251 -0
- data/lib/hanzoai/models/subject_summary.rb +261 -0
- data/lib/hanzoai/models/submit_req.rb +250 -0
- data/lib/hanzoai/models/subprocessor_list.rb +223 -0
- data/lib/hanzoai/models/subscribe_req.rb +243 -0
- data/lib/hanzoai/models/subscription.rb +374 -0
- data/lib/hanzoai/models/subscription_list.rb +223 -0
- data/lib/hanzoai/models/subscription_plan.rb +256 -0
- data/lib/hanzoai/models/subscription_ref.rb +230 -0
- data/lib/hanzoai/models/subscription_view.rb +263 -0
- data/lib/hanzoai/models/subscriptions.rb +232 -0
- data/lib/hanzoai/models/suggest_response.rb +265 -0
- data/lib/hanzoai/models/suggestion.rb +271 -0
- data/lib/hanzoai/models/suite.rb +270 -0
- data/lib/hanzoai/models/summary.rb +241 -0
- data/lib/hanzoai/models/summary_resp.rb +273 -0
- data/lib/hanzoai/models/summary_view.rb +231 -0
- data/lib/hanzoai/models/suppression.rb +251 -0
- data/lib/hanzoai/models/suppression_list.rb +223 -0
- data/lib/hanzoai/models/symbol.rb +251 -0
- data/lib/hanzoai/models/sync_list.rb +223 -0
- data/lib/hanzoai/models/sync_queued.rb +231 -0
- data/lib/hanzoai/models/sync_req.rb +281 -0
- data/lib/hanzoai/models/sync_tally.rb +231 -0
- data/lib/hanzoai/models/sync_view.rb +301 -0
- data/lib/hanzoai/models/tag_config.rb +222 -0
- data/lib/hanzoai/models/target_deleted.rb +231 -0
- data/lib/hanzoai/models/target_list.rb +223 -0
- data/lib/hanzoai/models/target_req.rb +281 -0
- data/lib/hanzoai/models/target_view.rb +341 -0
- data/lib/hanzoai/models/tariff.rb +283 -0
- data/lib/hanzoai/models/tariff_in.rb +251 -0
- data/lib/hanzoai/models/taxon.rb +335 -0
- data/lib/hanzoai/models/taxon_in.rb +325 -0
- data/lib/hanzoai/models/taxonomy.rb +223 -0
- data/lib/hanzoai/models/team_room.rb +315 -0
- data/lib/hanzoai/models/team_room_bind.rb +253 -0
- data/lib/hanzoai/models/team_rooms.rb +223 -0
- data/lib/hanzoai/models/template_catalog.rb +233 -0
- data/lib/hanzoai/models/template_override.rb +273 -0
- data/lib/hanzoai/models/template_reply.rb +231 -0
- data/lib/hanzoai/models/template_view.rb +283 -0
- data/lib/hanzoai/models/test_result.rb +251 -0
- data/lib/hanzoai/models/ticket_grant.rb +241 -0
- data/lib/hanzoai/models/tier.rb +249 -0
- data/lib/hanzoai/models/tier_balance.rb +256 -0
- data/lib/hanzoai/models/tier_limits.rb +268 -0
- data/lib/hanzoai/models/timeseries.rb +283 -0
- data/lib/hanzoai/models/tls_config.rb +243 -0
- data/lib/hanzoai/models/todo_project.rb +281 -0
- data/lib/hanzoai/models/tool.rb +281 -0
- data/lib/hanzoai/models/tool_call.rb +233 -0
- data/lib/hanzoai/models/tool_list.rb +223 -0
- data/lib/hanzoai/models/tool_result.rb +231 -0
- data/lib/hanzoai/models/top.rb +301 -0
- data/lib/hanzoai/models/top_models.rb +243 -0
- data/lib/hanzoai/models/top_products.rb +253 -0
- data/lib/hanzoai/models/topup_in.rb +251 -0
- data/lib/hanzoai/models/total_view.rb +311 -0
- data/lib/hanzoai/models/trace_list.rb +223 -0
- data/lib/hanzoai/models/trace_view.rb +361 -0
- data/lib/hanzoai/models/traffic_caller.rb +281 -0
- data/lib/hanzoai/models/traffic_view.rb +355 -0
- data/lib/hanzoai/models/trail_page.rb +253 -0
- data/lib/hanzoai/models/transaction.rb +293 -0
- data/lib/hanzoai/models/transactions.rb +240 -0
- data/lib/hanzoai/models/transactions_out.rb +223 -0
- data/lib/hanzoai/models/transfer_req.rb +275 -0
- data/lib/hanzoai/models/transition_in.rb +251 -0
- data/lib/hanzoai/models/transition_result.rb +271 -0
- data/lib/hanzoai/models/treasury_report.rb +273 -0
- data/lib/hanzoai/models/tree_entry.rb +241 -0
- data/lib/hanzoai/models/tree_entry_json.rb +261 -0
- data/lib/hanzoai/models/tree_json.rb +223 -0
- data/lib/hanzoai/models/tree_node.rb +233 -0
- data/lib/hanzoai/models/trial.rb +353 -0
- data/lib/hanzoai/models/trial_balance.rb +273 -0
- data/lib/hanzoai/models/trial_balance_row.rb +301 -0
- data/lib/hanzoai/models/trigger_list.rb +223 -0
- data/lib/hanzoai/models/trigger_view.rb +271 -0
- data/lib/hanzoai/models/trust_ask.rb +271 -0
- data/lib/hanzoai/models/trust_ask_view.rb +341 -0
- data/lib/hanzoai/models/trust_asked.rb +231 -0
- data/lib/hanzoai/models/trust_coverage.rb +253 -0
- data/lib/hanzoai/models/trust_decision.rb +241 -0
- data/lib/hanzoai/models/trust_desk.rb +287 -0
- data/lib/hanzoai/models/trust_documents.rb +223 -0
- data/lib/hanzoai/models/trust_edit.rb +291 -0
- data/lib/hanzoai/models/trust_grant_view.rb +261 -0
- data/lib/hanzoai/models/trust_granted.rb +251 -0
- data/lib/hanzoai/models/trust_item.rb +301 -0
- data/lib/hanzoai/models/trust_item_view.rb +331 -0
- data/lib/hanzoai/models/trust_page.rb +253 -0
- data/lib/hanzoai/models/trust_publish.rb +291 -0
- data/lib/hanzoai/models/trust_refused.rb +221 -0
- data/lib/hanzoai/models/trust_settings.rb +251 -0
- data/lib/hanzoai/models/trust_tally.rb +271 -0
- data/lib/hanzoai/models/txn.rb +291 -0
- data/lib/hanzoai/models/unreadable.rb +220 -0
- data/lib/hanzoai/models/unreconciled_out.rb +235 -0
- data/lib/hanzoai/models/unsubscribed.rb +241 -0
- data/lib/hanzoai/models/update_agent_in.rb +303 -0
- data/lib/hanzoai/models/update_campaign_in.rb +281 -0
- data/lib/hanzoai/models/update_endpoint_in.rb +253 -0
- data/lib/hanzoai/models/update_list.rb +223 -0
- data/lib/hanzoai/models/upkeep.rb +273 -0
- data/lib/hanzoai/models/upkeep_in.rb +241 -0
- data/lib/hanzoai/models/upload_in.rb +231 -0
- data/lib/hanzoai/models/upstream.rb +243 -0
- data/lib/hanzoai/models/usage.rb +243 -0
- data/lib/hanzoai/models/usage_analytics_access.rb +231 -0
- data/lib/hanzoai/models/usage_analytics_grant.rb +241 -0
- data/lib/hanzoai/models/usage_analytics_view.rb +291 -0
- data/lib/hanzoai/models/usage_point.rb +251 -0
- data/lib/hanzoai/models/usage_repo.rb +241 -0
- data/lib/hanzoai/models/usage_scope.rb +231 -0
- data/lib/hanzoai/models/usage_summary.rb +301 -0
- data/lib/hanzoai/models/usage_view.rb +243 -0
- data/lib/hanzoai/models/usage_window_view.rb +401 -0
- data/lib/hanzoai/models/user_enablement_item.rb +271 -0
- data/lib/hanzoai/models/user_optin_req.rb +231 -0
- data/lib/hanzoai/models/user_optin_view.rb +241 -0
- data/lib/hanzoai/models/utm.rb +256 -0
- data/lib/hanzoai/models/validator_claim.rb +241 -0
- data/lib/hanzoai/models/validator_list.rb +233 -0
- data/lib/hanzoai/models/variant.rb +261 -0
- data/lib/hanzoai/models/vendor_row.rb +243 -0
- data/lib/hanzoai/models/vendors_out.rb +223 -0
- data/lib/hanzoai/models/venue.rb +241 -0
- data/lib/hanzoai/models/verdict.rb +274 -0
- data/lib/hanzoai/models/verification_decision.rb +231 -0
- data/lib/hanzoai/models/verification_req.rb +261 -0
- data/lib/hanzoai/models/verification_tally.rb +233 -0
- data/lib/hanzoai/models/verify_out.rb +273 -0
- data/lib/hanzoai/models/verify_request.rb +221 -0
- data/lib/hanzoai/models/version_message.rb +261 -0
- data/lib/hanzoai/models/version_meta.rb +241 -0
- data/lib/hanzoai/models/version_page.rb +223 -0
- data/lib/hanzoai/models/version_view.rb +241 -0
- data/lib/hanzoai/models/voucher.rb +263 -0
- data/lib/hanzoai/models/waiting.rb +281 -0
- data/lib/hanzoai/models/wallet.rb +327 -0
- data/lib/hanzoai/models/wallet_account.rb +251 -0
- data/lib/hanzoai/models/wallet_list.rb +223 -0
- data/lib/hanzoai/models/web_engine.rb +241 -0
- data/lib/hanzoai/models/web_overview.rb +271 -0
- data/lib/hanzoai/models/web_question.rb +263 -0
- data/lib/hanzoai/models/web_result.rb +251 -0
- data/lib/hanzoai/models/web_search_query.rb +231 -0
- data/lib/hanzoai/models/web_search_results.rb +255 -0
- data/lib/hanzoai/models/window.rb +256 -0
- data/lib/hanzoai/models/wire.rb +421 -0
- data/lib/hanzoai/models/wire_fact.rb +331 -0
- data/lib/hanzoai/models/wire_instructions.rb +292 -0
- data/lib/hanzoai/models/worker_list.rb +223 -0
- data/lib/hanzoai/models/worker_script_put.rb +263 -0
- data/lib/hanzoai/models/world_index.rb +243 -0
- data/lib/hanzoai/models/world_wire.rb +261 -0
- data/lib/hanzoai/models/write_in.rb +241 -0
- data/lib/hanzoai/models/written.rb +241 -0
- data/lib/hanzoai/models/wrote.rb +231 -0
- data/lib/hanzoai/models/zap_proc_req.rb +238 -0
- data/lib/hanzoai/version.rb +15 -0
- data/lib/hanzoai.rb +2487 -0
- data/scripts/bootstrap +24 -0
- data/scripts/generate.sh +23 -0
- data/scripts/test +22 -0
- metadata +2578 -0
|
@@ -0,0 +1,3047 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Hanzo Cloud API
|
|
3
|
+
|
|
4
|
+
#The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: v1
|
|
7
|
+
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.14.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module Hanzoai
|
|
16
|
+
class IntegrationsApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Forgets a connector: every custodied secret, then the row.
|
|
23
|
+
# Forgets a connector: every custodied secret, then the row. Idempotent — dropping a never-connected id still answers {disconnected:true} (disconnect() parity). No provider Revoke: none of the user-plane providers exposes a revoke endpoint.
|
|
24
|
+
# @param id [String] ID is the connector id, provider + \":\" + label (\"openai:default\") — the auth-profile-id shape. Another user's id is simply no row, so 404.
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [DisconnectOut]
|
|
27
|
+
def delete_integrations_connectors_by_id(id, opts = {})
|
|
28
|
+
data, _status_code, _headers = delete_integrations_connectors_by_id_with_http_info(id, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Forgets a connector: every custodied secret, then the row.
|
|
33
|
+
# Forgets a connector: every custodied secret, then the row. Idempotent — dropping a never-connected id still answers {disconnected:true} (disconnect() parity). No provider Revoke: none of the user-plane providers exposes a revoke endpoint.
|
|
34
|
+
# @param id [String] ID is the connector id, provider + \":\" + label (\"openai:default\") — the auth-profile-id shape. Another user's id is simply no row, so 404.
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(DisconnectOut, Integer, Hash)>] DisconnectOut data, response status code and response headers
|
|
37
|
+
def delete_integrations_connectors_by_id_with_http_info(id, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.delete_integrations_connectors_by_id ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'id' is set
|
|
42
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling IntegrationsApi.delete_integrations_connectors_by_id"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/v1/integrations/connectors/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
55
|
+
|
|
56
|
+
# form parameters
|
|
57
|
+
form_params = opts[:form_params] || {}
|
|
58
|
+
|
|
59
|
+
# http body (model)
|
|
60
|
+
post_body = opts[:debug_body]
|
|
61
|
+
|
|
62
|
+
# return_type
|
|
63
|
+
return_type = opts[:debug_return_type] || 'DisconnectOut'
|
|
64
|
+
|
|
65
|
+
# auth_names
|
|
66
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
67
|
+
|
|
68
|
+
new_options = opts.merge(
|
|
69
|
+
:operation => :"IntegrationsApi.delete_integrations_connectors_by_id",
|
|
70
|
+
:header_params => header_params,
|
|
71
|
+
:query_params => query_params,
|
|
72
|
+
:form_params => form_params,
|
|
73
|
+
:body => post_body,
|
|
74
|
+
:auth_names => auth_names,
|
|
75
|
+
:return_type => return_type
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
79
|
+
if @api_client.config.debugging
|
|
80
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#delete_integrations_connectors_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
81
|
+
end
|
|
82
|
+
return data, status_code, headers
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
# Deletes the repo's Pages site.
|
|
86
|
+
# Deletes the repo's Pages site. 404 when there is none, so a caller can tell \"turned it off\" from \"there was nothing on\".
|
|
87
|
+
# @param repo [String] Repo is the repository's short name within the org's installation, with no owner prefix (the owner is server-derived from the grant). A trailing \".git\" is stripped.
|
|
88
|
+
# @param [Hash] opts the optional parameters
|
|
89
|
+
# @return [GithubPagesDisabledOut]
|
|
90
|
+
def delete_integrations_github_repos_by_repo_pages(repo, opts = {})
|
|
91
|
+
data, _status_code, _headers = delete_integrations_github_repos_by_repo_pages_with_http_info(repo, opts)
|
|
92
|
+
data
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# Deletes the repo's Pages site.
|
|
96
|
+
# Deletes the repo's Pages site. 404 when there is none, so a caller can tell \"turned it off\" from \"there was nothing on\".
|
|
97
|
+
# @param repo [String] Repo is the repository's short name within the org's installation, with no owner prefix (the owner is server-derived from the grant). A trailing \".git\" is stripped.
|
|
98
|
+
# @param [Hash] opts the optional parameters
|
|
99
|
+
# @return [Array<(GithubPagesDisabledOut, Integer, Hash)>] GithubPagesDisabledOut data, response status code and response headers
|
|
100
|
+
def delete_integrations_github_repos_by_repo_pages_with_http_info(repo, opts = {})
|
|
101
|
+
if @api_client.config.debugging
|
|
102
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.delete_integrations_github_repos_by_repo_pages ...'
|
|
103
|
+
end
|
|
104
|
+
# verify the required parameter 'repo' is set
|
|
105
|
+
if @api_client.config.client_side_validation && repo.nil?
|
|
106
|
+
fail ArgumentError, "Missing the required parameter 'repo' when calling IntegrationsApi.delete_integrations_github_repos_by_repo_pages"
|
|
107
|
+
end
|
|
108
|
+
# resource path
|
|
109
|
+
local_var_path = '/v1/integrations/github/repos/{repo}/pages'.sub('{' + 'repo' + '}', CGI.escape(repo.to_s))
|
|
110
|
+
|
|
111
|
+
# query parameters
|
|
112
|
+
query_params = opts[:query_params] || {}
|
|
113
|
+
|
|
114
|
+
# header parameters
|
|
115
|
+
header_params = opts[:header_params] || {}
|
|
116
|
+
# HTTP header 'Accept' (if needed)
|
|
117
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
118
|
+
|
|
119
|
+
# form parameters
|
|
120
|
+
form_params = opts[:form_params] || {}
|
|
121
|
+
|
|
122
|
+
# http body (model)
|
|
123
|
+
post_body = opts[:debug_body]
|
|
124
|
+
|
|
125
|
+
# return_type
|
|
126
|
+
return_type = opts[:debug_return_type] || 'GithubPagesDisabledOut'
|
|
127
|
+
|
|
128
|
+
# auth_names
|
|
129
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
130
|
+
|
|
131
|
+
new_options = opts.merge(
|
|
132
|
+
:operation => :"IntegrationsApi.delete_integrations_github_repos_by_repo_pages",
|
|
133
|
+
:header_params => header_params,
|
|
134
|
+
:query_params => query_params,
|
|
135
|
+
:form_params => form_params,
|
|
136
|
+
:body => post_body,
|
|
137
|
+
:auth_names => auth_names,
|
|
138
|
+
:return_type => return_type
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
142
|
+
if @api_client.config.debugging
|
|
143
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#delete_integrations_github_repos_by_repo_pages\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
144
|
+
end
|
|
145
|
+
return data, status_code, headers
|
|
146
|
+
end
|
|
147
|
+
|
|
148
|
+
# Returns every registered integration provider together with THIS org's connection status for it — the catalog the console's Integrations page renders.
|
|
149
|
+
# Returns every registered integration provider together with THIS org's connection status for it — the catalog the console's Integrations page renders. Org-authed: a caller with no validated principal is 403, because the status is per-org and there is no org-less answer. User-plane providers (the /v1/integrations/connectors surface) are omitted; the two planes are disjoint.
|
|
150
|
+
# @param [Hash] opts the optional parameters
|
|
151
|
+
# @return [ListOut]
|
|
152
|
+
def get_integrations(opts = {})
|
|
153
|
+
data, _status_code, _headers = get_integrations_with_http_info(opts)
|
|
154
|
+
data
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
# Returns every registered integration provider together with THIS org's connection status for it — the catalog the console's Integrations page renders.
|
|
158
|
+
# Returns every registered integration provider together with THIS org's connection status for it — the catalog the console's Integrations page renders. Org-authed: a caller with no validated principal is 403, because the status is per-org and there is no org-less answer. User-plane providers (the /v1/integrations/connectors surface) are omitted; the two planes are disjoint.
|
|
159
|
+
# @param [Hash] opts the optional parameters
|
|
160
|
+
# @return [Array<(ListOut, Integer, Hash)>] ListOut data, response status code and response headers
|
|
161
|
+
def get_integrations_with_http_info(opts = {})
|
|
162
|
+
if @api_client.config.debugging
|
|
163
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations ...'
|
|
164
|
+
end
|
|
165
|
+
# resource path
|
|
166
|
+
local_var_path = '/v1/integrations'
|
|
167
|
+
|
|
168
|
+
# query parameters
|
|
169
|
+
query_params = opts[:query_params] || {}
|
|
170
|
+
|
|
171
|
+
# header parameters
|
|
172
|
+
header_params = opts[:header_params] || {}
|
|
173
|
+
# HTTP header 'Accept' (if needed)
|
|
174
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
175
|
+
|
|
176
|
+
# form parameters
|
|
177
|
+
form_params = opts[:form_params] || {}
|
|
178
|
+
|
|
179
|
+
# http body (model)
|
|
180
|
+
post_body = opts[:debug_body]
|
|
181
|
+
|
|
182
|
+
# return_type
|
|
183
|
+
return_type = opts[:debug_return_type] || 'ListOut'
|
|
184
|
+
|
|
185
|
+
# auth_names
|
|
186
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
187
|
+
|
|
188
|
+
new_options = opts.merge(
|
|
189
|
+
:operation => :"IntegrationsApi.get_integrations",
|
|
190
|
+
:header_params => header_params,
|
|
191
|
+
:query_params => query_params,
|
|
192
|
+
:form_params => form_params,
|
|
193
|
+
:body => post_body,
|
|
194
|
+
:auth_names => auth_names,
|
|
195
|
+
:return_type => return_type
|
|
196
|
+
)
|
|
197
|
+
|
|
198
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
199
|
+
if @api_client.config.debugging
|
|
200
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
201
|
+
end
|
|
202
|
+
return data, status_code, headers
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
# Returns ONE provider with this org's connection status — the same view list carries, for a single id.
|
|
206
|
+
# Returns ONE provider with this org's connection status — the same view list carries, for a single id. An unknown id is 404, and so is a user-plane provider: the org surface never resolves one.
|
|
207
|
+
# @param provider [String] Provider is the registry id of the connector — \"slack\", \"github\", \"cloudflare\". Unknown ids are 404, as are the user-plane (/v1/integrations/connectors) providers, which this surface never resolves.
|
|
208
|
+
# @param [Hash] opts the optional parameters
|
|
209
|
+
# @return [ProviderView]
|
|
210
|
+
def get_integrations_by_provider(provider, opts = {})
|
|
211
|
+
data, _status_code, _headers = get_integrations_by_provider_with_http_info(provider, opts)
|
|
212
|
+
data
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
# Returns ONE provider with this org's connection status — the same view list carries, for a single id.
|
|
216
|
+
# Returns ONE provider with this org's connection status — the same view list carries, for a single id. An unknown id is 404, and so is a user-plane provider: the org surface never resolves one.
|
|
217
|
+
# @param provider [String] Provider is the registry id of the connector — \"slack\", \"github\", \"cloudflare\". Unknown ids are 404, as are the user-plane (/v1/integrations/connectors) providers, which this surface never resolves.
|
|
218
|
+
# @param [Hash] opts the optional parameters
|
|
219
|
+
# @return [Array<(ProviderView, Integer, Hash)>] ProviderView data, response status code and response headers
|
|
220
|
+
def get_integrations_by_provider_with_http_info(provider, opts = {})
|
|
221
|
+
if @api_client.config.debugging
|
|
222
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_by_provider ...'
|
|
223
|
+
end
|
|
224
|
+
# verify the required parameter 'provider' is set
|
|
225
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
226
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.get_integrations_by_provider"
|
|
227
|
+
end
|
|
228
|
+
# resource path
|
|
229
|
+
local_var_path = '/v1/integrations/{provider}'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
230
|
+
|
|
231
|
+
# query parameters
|
|
232
|
+
query_params = opts[:query_params] || {}
|
|
233
|
+
|
|
234
|
+
# header parameters
|
|
235
|
+
header_params = opts[:header_params] || {}
|
|
236
|
+
# HTTP header 'Accept' (if needed)
|
|
237
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
238
|
+
|
|
239
|
+
# form parameters
|
|
240
|
+
form_params = opts[:form_params] || {}
|
|
241
|
+
|
|
242
|
+
# http body (model)
|
|
243
|
+
post_body = opts[:debug_body]
|
|
244
|
+
|
|
245
|
+
# return_type
|
|
246
|
+
return_type = opts[:debug_return_type] || 'ProviderView'
|
|
247
|
+
|
|
248
|
+
# auth_names
|
|
249
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
250
|
+
|
|
251
|
+
new_options = opts.merge(
|
|
252
|
+
:operation => :"IntegrationsApi.get_integrations_by_provider",
|
|
253
|
+
:header_params => header_params,
|
|
254
|
+
:query_params => query_params,
|
|
255
|
+
:form_params => form_params,
|
|
256
|
+
:body => post_body,
|
|
257
|
+
:auth_names => auth_names,
|
|
258
|
+
:return_type => return_type
|
|
259
|
+
)
|
|
260
|
+
|
|
261
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
262
|
+
if @api_client.config.debugging
|
|
263
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_by_provider\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
264
|
+
end
|
|
265
|
+
return data, status_code, headers
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
# OAuth return for any connector
|
|
269
|
+
# The single address every connector's OAuth flow returns to. It exchanges the authorization the provider granted, records the connection, and ALWAYS redirects the browser back to the console — on success and on every labeled failure alike, so a user never lands on a raw JSON dead end. It is public and carries no principal, so the org is taken ONLY from the signed state minted when the flow began; no header is trusted here. That state is single-use and is burned BEFORE the exchange, so one authorization is one attempt and a replayed return fails instead of exchanging twice. Tokens are sealed into the org's KMS namespace BEFORE the connection row is written, so a failure of the secret store leaves no half-connected integration advertising a credential that was never stored. Token values never appear in the redirect, in a log line or in an error. One generalization is worth knowing: a GitHub App installation returns an installation identifier instead of an OAuth code, and it is accepted in the code's place so the App model needs no second address.
|
|
270
|
+
# @param provider [String]
|
|
271
|
+
# @param [Hash] opts the optional parameters
|
|
272
|
+
# @return [nil]
|
|
273
|
+
def get_integrations_by_provider_callback(provider, opts = {})
|
|
274
|
+
get_integrations_by_provider_callback_with_http_info(provider, opts)
|
|
275
|
+
nil
|
|
276
|
+
end
|
|
277
|
+
|
|
278
|
+
# OAuth return for any connector
|
|
279
|
+
# The single address every connector's OAuth flow returns to. It exchanges the authorization the provider granted, records the connection, and ALWAYS redirects the browser back to the console — on success and on every labeled failure alike, so a user never lands on a raw JSON dead end. It is public and carries no principal, so the org is taken ONLY from the signed state minted when the flow began; no header is trusted here. That state is single-use and is burned BEFORE the exchange, so one authorization is one attempt and a replayed return fails instead of exchanging twice. Tokens are sealed into the org's KMS namespace BEFORE the connection row is written, so a failure of the secret store leaves no half-connected integration advertising a credential that was never stored. Token values never appear in the redirect, in a log line or in an error. One generalization is worth knowing: a GitHub App installation returns an installation identifier instead of an OAuth code, and it is accepted in the code's place so the App model needs no second address.
|
|
280
|
+
# @param provider [String]
|
|
281
|
+
# @param [Hash] opts the optional parameters
|
|
282
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
283
|
+
def get_integrations_by_provider_callback_with_http_info(provider, opts = {})
|
|
284
|
+
if @api_client.config.debugging
|
|
285
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_by_provider_callback ...'
|
|
286
|
+
end
|
|
287
|
+
# verify the required parameter 'provider' is set
|
|
288
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
289
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.get_integrations_by_provider_callback"
|
|
290
|
+
end
|
|
291
|
+
# resource path
|
|
292
|
+
local_var_path = '/v1/integrations/{provider}/callback'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
293
|
+
|
|
294
|
+
# query parameters
|
|
295
|
+
query_params = opts[:query_params] || {}
|
|
296
|
+
|
|
297
|
+
# header parameters
|
|
298
|
+
header_params = opts[:header_params] || {}
|
|
299
|
+
|
|
300
|
+
# form parameters
|
|
301
|
+
form_params = opts[:form_params] || {}
|
|
302
|
+
|
|
303
|
+
# http body (model)
|
|
304
|
+
post_body = opts[:debug_body]
|
|
305
|
+
|
|
306
|
+
# return_type
|
|
307
|
+
return_type = opts[:debug_return_type]
|
|
308
|
+
|
|
309
|
+
# auth_names
|
|
310
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
311
|
+
|
|
312
|
+
new_options = opts.merge(
|
|
313
|
+
:operation => :"IntegrationsApi.get_integrations_by_provider_callback",
|
|
314
|
+
:header_params => header_params,
|
|
315
|
+
:query_params => query_params,
|
|
316
|
+
:form_params => form_params,
|
|
317
|
+
:body => post_body,
|
|
318
|
+
:auth_names => auth_names,
|
|
319
|
+
:return_type => return_type
|
|
320
|
+
)
|
|
321
|
+
|
|
322
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
323
|
+
if @api_client.config.debugging
|
|
324
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_by_provider_callback\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
325
|
+
end
|
|
326
|
+
return data, status_code, headers
|
|
327
|
+
end
|
|
328
|
+
|
|
329
|
+
# Lists the caller's OWN connectors across every provider — the set `hanzo connector ls` prints.
|
|
330
|
+
# Lists the caller's OWN connectors across every provider — the set `hanzo connector ls` prints. Rows are keyed (org,user), so this can never surface another user's connector, and no secret is in the view.
|
|
331
|
+
# @param [Hash] opts the optional parameters
|
|
332
|
+
# @return [ConnectorsOut]
|
|
333
|
+
def get_integrations_connectors(opts = {})
|
|
334
|
+
data, _status_code, _headers = get_integrations_connectors_with_http_info(opts)
|
|
335
|
+
data
|
|
336
|
+
end
|
|
337
|
+
|
|
338
|
+
# Lists the caller's OWN connectors across every provider — the set `hanzo connector ls` prints.
|
|
339
|
+
# Lists the caller's OWN connectors across every provider — the set `hanzo connector ls` prints. Rows are keyed (org,user), so this can never surface another user's connector, and no secret is in the view.
|
|
340
|
+
# @param [Hash] opts the optional parameters
|
|
341
|
+
# @return [Array<(ConnectorsOut, Integer, Hash)>] ConnectorsOut data, response status code and response headers
|
|
342
|
+
def get_integrations_connectors_with_http_info(opts = {})
|
|
343
|
+
if @api_client.config.debugging
|
|
344
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_connectors ...'
|
|
345
|
+
end
|
|
346
|
+
# resource path
|
|
347
|
+
local_var_path = '/v1/integrations/connectors'
|
|
348
|
+
|
|
349
|
+
# query parameters
|
|
350
|
+
query_params = opts[:query_params] || {}
|
|
351
|
+
|
|
352
|
+
# header parameters
|
|
353
|
+
header_params = opts[:header_params] || {}
|
|
354
|
+
# HTTP header 'Accept' (if needed)
|
|
355
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
356
|
+
|
|
357
|
+
# form parameters
|
|
358
|
+
form_params = opts[:form_params] || {}
|
|
359
|
+
|
|
360
|
+
# http body (model)
|
|
361
|
+
post_body = opts[:debug_body]
|
|
362
|
+
|
|
363
|
+
# return_type
|
|
364
|
+
return_type = opts[:debug_return_type] || 'ConnectorsOut'
|
|
365
|
+
|
|
366
|
+
# auth_names
|
|
367
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
368
|
+
|
|
369
|
+
new_options = opts.merge(
|
|
370
|
+
:operation => :"IntegrationsApi.get_integrations_connectors",
|
|
371
|
+
:header_params => header_params,
|
|
372
|
+
:query_params => query_params,
|
|
373
|
+
:form_params => form_params,
|
|
374
|
+
:body => post_body,
|
|
375
|
+
:auth_names => auth_names,
|
|
376
|
+
:return_type => return_type
|
|
377
|
+
)
|
|
378
|
+
|
|
379
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
380
|
+
if @api_client.config.debugging
|
|
381
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_connectors\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
382
|
+
end
|
|
383
|
+
return data, status_code, headers
|
|
384
|
+
end
|
|
385
|
+
|
|
386
|
+
# Hands the custodied access token to its owner — the ONE place custody exits.
|
|
387
|
+
# Hands the custodied access token to its owner — the ONE place custody exits. The (org,user)-keyed row IS the same-user gate: another user's id is simply \"no row\" → 404. fresh() auto-rotates within the refreshSkew window; static providers degenerate to a plain kmsGet of Secrets[0]. Refresh tokens are NEVER returned — custody keeps the sink. The token is never logged.
|
|
388
|
+
# @param id [String] ID is the connector id, provider + \":\" + label (\"openai:default\") — the auth-profile-id shape. Another user's id is simply no row, so 404.
|
|
389
|
+
# @param [Hash] opts the optional parameters
|
|
390
|
+
# @return [ConnectorTokenOut]
|
|
391
|
+
def get_integrations_connectors_by_id_token(id, opts = {})
|
|
392
|
+
data, _status_code, _headers = get_integrations_connectors_by_id_token_with_http_info(id, opts)
|
|
393
|
+
data
|
|
394
|
+
end
|
|
395
|
+
|
|
396
|
+
# Hands the custodied access token to its owner — the ONE place custody exits.
|
|
397
|
+
# Hands the custodied access token to its owner — the ONE place custody exits. The (org,user)-keyed row IS the same-user gate: another user's id is simply \"no row\" → 404. fresh() auto-rotates within the refreshSkew window; static providers degenerate to a plain kmsGet of Secrets[0]. Refresh tokens are NEVER returned — custody keeps the sink. The token is never logged.
|
|
398
|
+
# @param id [String] ID is the connector id, provider + \":\" + label (\"openai:default\") — the auth-profile-id shape. Another user's id is simply no row, so 404.
|
|
399
|
+
# @param [Hash] opts the optional parameters
|
|
400
|
+
# @return [Array<(ConnectorTokenOut, Integer, Hash)>] ConnectorTokenOut data, response status code and response headers
|
|
401
|
+
def get_integrations_connectors_by_id_token_with_http_info(id, opts = {})
|
|
402
|
+
if @api_client.config.debugging
|
|
403
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_connectors_by_id_token ...'
|
|
404
|
+
end
|
|
405
|
+
# verify the required parameter 'id' is set
|
|
406
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
407
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling IntegrationsApi.get_integrations_connectors_by_id_token"
|
|
408
|
+
end
|
|
409
|
+
# resource path
|
|
410
|
+
local_var_path = '/v1/integrations/connectors/{id}/token'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
411
|
+
|
|
412
|
+
# query parameters
|
|
413
|
+
query_params = opts[:query_params] || {}
|
|
414
|
+
|
|
415
|
+
# header parameters
|
|
416
|
+
header_params = opts[:header_params] || {}
|
|
417
|
+
# HTTP header 'Accept' (if needed)
|
|
418
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
419
|
+
|
|
420
|
+
# form parameters
|
|
421
|
+
form_params = opts[:form_params] || {}
|
|
422
|
+
|
|
423
|
+
# http body (model)
|
|
424
|
+
post_body = opts[:debug_body]
|
|
425
|
+
|
|
426
|
+
# return_type
|
|
427
|
+
return_type = opts[:debug_return_type] || 'ConnectorTokenOut'
|
|
428
|
+
|
|
429
|
+
# auth_names
|
|
430
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
431
|
+
|
|
432
|
+
new_options = opts.merge(
|
|
433
|
+
:operation => :"IntegrationsApi.get_integrations_connectors_by_id_token",
|
|
434
|
+
:header_params => header_params,
|
|
435
|
+
:query_params => query_params,
|
|
436
|
+
:form_params => form_params,
|
|
437
|
+
:body => post_body,
|
|
438
|
+
:auth_names => auth_names,
|
|
439
|
+
:return_type => return_type
|
|
440
|
+
)
|
|
441
|
+
|
|
442
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
443
|
+
if @api_client.config.debugging
|
|
444
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_connectors_by_id_token\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
445
|
+
end
|
|
446
|
+
return data, status_code, headers
|
|
447
|
+
end
|
|
448
|
+
|
|
449
|
+
# Lists the user-scoped provider cards — the catalog of what a user can connect, and how.
|
|
450
|
+
# Lists the user-scoped provider cards — the catalog of what a user can connect, and how. Methods derive from capabilities (Device/Adopt/Verify — Mount asserts at least one), never from a parallel kind enum.
|
|
451
|
+
# @param [Hash] opts the optional parameters
|
|
452
|
+
# @return [ConnectorProvidersOut]
|
|
453
|
+
def get_integrations_connectors_providers(opts = {})
|
|
454
|
+
data, _status_code, _headers = get_integrations_connectors_providers_with_http_info(opts)
|
|
455
|
+
data
|
|
456
|
+
end
|
|
457
|
+
|
|
458
|
+
# Lists the user-scoped provider cards — the catalog of what a user can connect, and how.
|
|
459
|
+
# Lists the user-scoped provider cards — the catalog of what a user can connect, and how. Methods derive from capabilities (Device/Adopt/Verify — Mount asserts at least one), never from a parallel kind enum.
|
|
460
|
+
# @param [Hash] opts the optional parameters
|
|
461
|
+
# @return [Array<(ConnectorProvidersOut, Integer, Hash)>] ConnectorProvidersOut data, response status code and response headers
|
|
462
|
+
def get_integrations_connectors_providers_with_http_info(opts = {})
|
|
463
|
+
if @api_client.config.debugging
|
|
464
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_connectors_providers ...'
|
|
465
|
+
end
|
|
466
|
+
# resource path
|
|
467
|
+
local_var_path = '/v1/integrations/connectors/providers'
|
|
468
|
+
|
|
469
|
+
# query parameters
|
|
470
|
+
query_params = opts[:query_params] || {}
|
|
471
|
+
|
|
472
|
+
# header parameters
|
|
473
|
+
header_params = opts[:header_params] || {}
|
|
474
|
+
# HTTP header 'Accept' (if needed)
|
|
475
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
476
|
+
|
|
477
|
+
# form parameters
|
|
478
|
+
form_params = opts[:form_params] || {}
|
|
479
|
+
|
|
480
|
+
# http body (model)
|
|
481
|
+
post_body = opts[:debug_body]
|
|
482
|
+
|
|
483
|
+
# return_type
|
|
484
|
+
return_type = opts[:debug_return_type] || 'ConnectorProvidersOut'
|
|
485
|
+
|
|
486
|
+
# auth_names
|
|
487
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
488
|
+
|
|
489
|
+
new_options = opts.merge(
|
|
490
|
+
:operation => :"IntegrationsApi.get_integrations_connectors_providers",
|
|
491
|
+
:header_params => header_params,
|
|
492
|
+
:query_params => query_params,
|
|
493
|
+
:form_params => form_params,
|
|
494
|
+
:body => post_body,
|
|
495
|
+
:auth_names => auth_names,
|
|
496
|
+
:return_type => return_type
|
|
497
|
+
)
|
|
498
|
+
|
|
499
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
500
|
+
if @api_client.config.debugging
|
|
501
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_connectors_providers\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
502
|
+
end
|
|
503
|
+
return data, status_code, headers
|
|
504
|
+
end
|
|
505
|
+
|
|
506
|
+
# Begin linking a Hanzo account from Discord
|
|
507
|
+
# The entry point behind the connect prompt Hanzo shows in a Discord server. It starts a link session and redirects to Discord's OAuth `identify` consent — the narrowest scope that establishes which Discord user is asking, and nothing more. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
508
|
+
# @param [Hash] opts the optional parameters
|
|
509
|
+
# @return [nil]
|
|
510
|
+
def get_integrations_discord_link(opts = {})
|
|
511
|
+
get_integrations_discord_link_with_http_info(opts)
|
|
512
|
+
nil
|
|
513
|
+
end
|
|
514
|
+
|
|
515
|
+
# Begin linking a Hanzo account from Discord
|
|
516
|
+
# The entry point behind the connect prompt Hanzo shows in a Discord server. It starts a link session and redirects to Discord's OAuth `identify` consent — the narrowest scope that establishes which Discord user is asking, and nothing more. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
517
|
+
# @param [Hash] opts the optional parameters
|
|
518
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
519
|
+
def get_integrations_discord_link_with_http_info(opts = {})
|
|
520
|
+
if @api_client.config.debugging
|
|
521
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_discord_link ...'
|
|
522
|
+
end
|
|
523
|
+
# resource path
|
|
524
|
+
local_var_path = '/v1/integrations/discord/link'
|
|
525
|
+
|
|
526
|
+
# query parameters
|
|
527
|
+
query_params = opts[:query_params] || {}
|
|
528
|
+
|
|
529
|
+
# header parameters
|
|
530
|
+
header_params = opts[:header_params] || {}
|
|
531
|
+
|
|
532
|
+
# form parameters
|
|
533
|
+
form_params = opts[:form_params] || {}
|
|
534
|
+
|
|
535
|
+
# http body (model)
|
|
536
|
+
post_body = opts[:debug_body]
|
|
537
|
+
|
|
538
|
+
# return_type
|
|
539
|
+
return_type = opts[:debug_return_type]
|
|
540
|
+
|
|
541
|
+
# auth_names
|
|
542
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
543
|
+
|
|
544
|
+
new_options = opts.merge(
|
|
545
|
+
:operation => :"IntegrationsApi.get_integrations_discord_link",
|
|
546
|
+
:header_params => header_params,
|
|
547
|
+
:query_params => query_params,
|
|
548
|
+
:form_params => form_params,
|
|
549
|
+
:body => post_body,
|
|
550
|
+
:auth_names => auth_names,
|
|
551
|
+
:return_type => return_type
|
|
552
|
+
)
|
|
553
|
+
|
|
554
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
555
|
+
if @api_client.config.debugging
|
|
556
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_discord_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
557
|
+
end
|
|
558
|
+
return data, status_code, headers
|
|
559
|
+
end
|
|
560
|
+
|
|
561
|
+
# Complete the Discord account link
|
|
562
|
+
# The final leg: it binds the verified Discord user to the Hanzo account that just signed in, and answers a short confirmation page telling them to return to Discord. The Hanzo credential is sealed into the connected org's KMS namespace rather than stored beside the link. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
563
|
+
# @param [Hash] opts the optional parameters
|
|
564
|
+
# @return [nil]
|
|
565
|
+
def get_integrations_discord_link_callback(opts = {})
|
|
566
|
+
get_integrations_discord_link_callback_with_http_info(opts)
|
|
567
|
+
nil
|
|
568
|
+
end
|
|
569
|
+
|
|
570
|
+
# Complete the Discord account link
|
|
571
|
+
# The final leg: it binds the verified Discord user to the Hanzo account that just signed in, and answers a short confirmation page telling them to return to Discord. The Hanzo credential is sealed into the connected org's KMS namespace rather than stored beside the link. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
572
|
+
# @param [Hash] opts the optional parameters
|
|
573
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
574
|
+
def get_integrations_discord_link_callback_with_http_info(opts = {})
|
|
575
|
+
if @api_client.config.debugging
|
|
576
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_discord_link_callback ...'
|
|
577
|
+
end
|
|
578
|
+
# resource path
|
|
579
|
+
local_var_path = '/v1/integrations/discord/link/callback'
|
|
580
|
+
|
|
581
|
+
# query parameters
|
|
582
|
+
query_params = opts[:query_params] || {}
|
|
583
|
+
|
|
584
|
+
# header parameters
|
|
585
|
+
header_params = opts[:header_params] || {}
|
|
586
|
+
|
|
587
|
+
# form parameters
|
|
588
|
+
form_params = opts[:form_params] || {}
|
|
589
|
+
|
|
590
|
+
# http body (model)
|
|
591
|
+
post_body = opts[:debug_body]
|
|
592
|
+
|
|
593
|
+
# return_type
|
|
594
|
+
return_type = opts[:debug_return_type]
|
|
595
|
+
|
|
596
|
+
# auth_names
|
|
597
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
598
|
+
|
|
599
|
+
new_options = opts.merge(
|
|
600
|
+
:operation => :"IntegrationsApi.get_integrations_discord_link_callback",
|
|
601
|
+
:header_params => header_params,
|
|
602
|
+
:query_params => query_params,
|
|
603
|
+
:form_params => form_params,
|
|
604
|
+
:body => post_body,
|
|
605
|
+
:auth_names => auth_names,
|
|
606
|
+
:return_type => return_type
|
|
607
|
+
)
|
|
608
|
+
|
|
609
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
610
|
+
if @api_client.config.debugging
|
|
611
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_discord_link_callback\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
612
|
+
end
|
|
613
|
+
return data, status_code, headers
|
|
614
|
+
end
|
|
615
|
+
|
|
616
|
+
# Discord sign-in return leg
|
|
617
|
+
# Where Discord returns the user after the identify consent. It resolves the verified Discord user, confirms the server is connected to an org, and hands the browser to the Hanzo sign-in that completes the link. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
618
|
+
# @param [Hash] opts the optional parameters
|
|
619
|
+
# @return [nil]
|
|
620
|
+
def get_integrations_discord_link_discord(opts = {})
|
|
621
|
+
get_integrations_discord_link_discord_with_http_info(opts)
|
|
622
|
+
nil
|
|
623
|
+
end
|
|
624
|
+
|
|
625
|
+
# Discord sign-in return leg
|
|
626
|
+
# Where Discord returns the user after the identify consent. It resolves the verified Discord user, confirms the server is connected to an org, and hands the browser to the Hanzo sign-in that completes the link. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
627
|
+
# @param [Hash] opts the optional parameters
|
|
628
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
629
|
+
def get_integrations_discord_link_discord_with_http_info(opts = {})
|
|
630
|
+
if @api_client.config.debugging
|
|
631
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_discord_link_discord ...'
|
|
632
|
+
end
|
|
633
|
+
# resource path
|
|
634
|
+
local_var_path = '/v1/integrations/discord/link/discord'
|
|
635
|
+
|
|
636
|
+
# query parameters
|
|
637
|
+
query_params = opts[:query_params] || {}
|
|
638
|
+
|
|
639
|
+
# header parameters
|
|
640
|
+
header_params = opts[:header_params] || {}
|
|
641
|
+
|
|
642
|
+
# form parameters
|
|
643
|
+
form_params = opts[:form_params] || {}
|
|
644
|
+
|
|
645
|
+
# http body (model)
|
|
646
|
+
post_body = opts[:debug_body]
|
|
647
|
+
|
|
648
|
+
# return_type
|
|
649
|
+
return_type = opts[:debug_return_type]
|
|
650
|
+
|
|
651
|
+
# auth_names
|
|
652
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
653
|
+
|
|
654
|
+
new_options = opts.merge(
|
|
655
|
+
:operation => :"IntegrationsApi.get_integrations_discord_link_discord",
|
|
656
|
+
:header_params => header_params,
|
|
657
|
+
:query_params => query_params,
|
|
658
|
+
:form_params => form_params,
|
|
659
|
+
:body => post_body,
|
|
660
|
+
:auth_names => auth_names,
|
|
661
|
+
:return_type => return_type
|
|
662
|
+
)
|
|
663
|
+
|
|
664
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
665
|
+
if @api_client.config.debugging
|
|
666
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_discord_link_discord\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
667
|
+
end
|
|
668
|
+
return data, status_code, headers
|
|
669
|
+
end
|
|
670
|
+
|
|
671
|
+
# Lists the GitHub accounts the caller may see the App installed on, each confirmed against the App's own list, plus where to add another.
|
|
672
|
+
# Lists the GitHub accounts the caller may see the App installed on, each confirmed against the App's own list, plus where to add another. The confirmation is the point. A connection row holds an installation id, and an id whose installation was since removed on GitHub is a row that mints nothing — every list and import against it fails with a token error, which reads as \"our git integration is broken\" rather than \"that install is gone\". Checking the App's view turns that into a fact the caller can act on. ORG-SCOPED for a tenant, deliberately. The App is installed across every customer, so the raw list is the customer list; a tenant sees only accounts its own org has bound. It discovers a NEW account by installing it (InstallURL), which is GitHub's own consent screen — not by reading ours. A SUPER ADMIN sees the App's whole install list, because that list is the platform's own inventory rather than any one tenant's data, and platform sudo is the single cross-tenant scope this house has. Without it an App installed out-of-band — granted straight from GitHub, so no connect flow ever ran and no connection row exists — is invisible to everyone: the console card reads \"not connected\" and an operator asked \"which GitHub orgs do you see\" can only answer for accounts already bound, which is precisely the accounts that were never the question.
|
|
673
|
+
# @param [Hash] opts the optional parameters
|
|
674
|
+
# @return [GithubInstallationsOut]
|
|
675
|
+
def get_integrations_github_installations(opts = {})
|
|
676
|
+
data, _status_code, _headers = get_integrations_github_installations_with_http_info(opts)
|
|
677
|
+
data
|
|
678
|
+
end
|
|
679
|
+
|
|
680
|
+
# Lists the GitHub accounts the caller may see the App installed on, each confirmed against the App's own list, plus where to add another.
|
|
681
|
+
# Lists the GitHub accounts the caller may see the App installed on, each confirmed against the App's own list, plus where to add another. The confirmation is the point. A connection row holds an installation id, and an id whose installation was since removed on GitHub is a row that mints nothing — every list and import against it fails with a token error, which reads as \"our git integration is broken\" rather than \"that install is gone\". Checking the App's view turns that into a fact the caller can act on. ORG-SCOPED for a tenant, deliberately. The App is installed across every customer, so the raw list is the customer list; a tenant sees only accounts its own org has bound. It discovers a NEW account by installing it (InstallURL), which is GitHub's own consent screen — not by reading ours. A SUPER ADMIN sees the App's whole install list, because that list is the platform's own inventory rather than any one tenant's data, and platform sudo is the single cross-tenant scope this house has. Without it an App installed out-of-band — granted straight from GitHub, so no connect flow ever ran and no connection row exists — is invisible to everyone: the console card reads \"not connected\" and an operator asked \"which GitHub orgs do you see\" can only answer for accounts already bound, which is precisely the accounts that were never the question.
|
|
682
|
+
# @param [Hash] opts the optional parameters
|
|
683
|
+
# @return [Array<(GithubInstallationsOut, Integer, Hash)>] GithubInstallationsOut data, response status code and response headers
|
|
684
|
+
def get_integrations_github_installations_with_http_info(opts = {})
|
|
685
|
+
if @api_client.config.debugging
|
|
686
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_github_installations ...'
|
|
687
|
+
end
|
|
688
|
+
# resource path
|
|
689
|
+
local_var_path = '/v1/integrations/github/installations'
|
|
690
|
+
|
|
691
|
+
# query parameters
|
|
692
|
+
query_params = opts[:query_params] || {}
|
|
693
|
+
|
|
694
|
+
# header parameters
|
|
695
|
+
header_params = opts[:header_params] || {}
|
|
696
|
+
# HTTP header 'Accept' (if needed)
|
|
697
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
698
|
+
|
|
699
|
+
# form parameters
|
|
700
|
+
form_params = opts[:form_params] || {}
|
|
701
|
+
|
|
702
|
+
# http body (model)
|
|
703
|
+
post_body = opts[:debug_body]
|
|
704
|
+
|
|
705
|
+
# return_type
|
|
706
|
+
return_type = opts[:debug_return_type] || 'GithubInstallationsOut'
|
|
707
|
+
|
|
708
|
+
# auth_names
|
|
709
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
710
|
+
|
|
711
|
+
new_options = opts.merge(
|
|
712
|
+
:operation => :"IntegrationsApi.get_integrations_github_installations",
|
|
713
|
+
:header_params => header_params,
|
|
714
|
+
:query_params => query_params,
|
|
715
|
+
:form_params => form_params,
|
|
716
|
+
:body => post_body,
|
|
717
|
+
:auth_names => auth_names,
|
|
718
|
+
:return_type => return_type
|
|
719
|
+
)
|
|
720
|
+
|
|
721
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
722
|
+
if @api_client.config.debugging
|
|
723
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_github_installations\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
724
|
+
end
|
|
725
|
+
return data, status_code, headers
|
|
726
|
+
end
|
|
727
|
+
|
|
728
|
+
# Lists the org's granted GitHub repositories, each annotated with its native import + sync status from the git object plane.
|
|
729
|
+
# Lists the org's granted GitHub repositories, each annotated with its native import + sync status from the git object plane. Org-authed: the org comes from the validated principal, and the granted set is bounded to THAT org's installation token — an org can never enumerate another org's repos. The console polls it to watch an import flip a repo to imported.
|
|
730
|
+
# @param [Hash] opts the optional parameters
|
|
731
|
+
# @return [GithubReposOut]
|
|
732
|
+
def get_integrations_github_repos(opts = {})
|
|
733
|
+
data, _status_code, _headers = get_integrations_github_repos_with_http_info(opts)
|
|
734
|
+
data
|
|
735
|
+
end
|
|
736
|
+
|
|
737
|
+
# Lists the org's granted GitHub repositories, each annotated with its native import + sync status from the git object plane.
|
|
738
|
+
# Lists the org's granted GitHub repositories, each annotated with its native import + sync status from the git object plane. Org-authed: the org comes from the validated principal, and the granted set is bounded to THAT org's installation token — an org can never enumerate another org's repos. The console polls it to watch an import flip a repo to imported.
|
|
739
|
+
# @param [Hash] opts the optional parameters
|
|
740
|
+
# @return [Array<(GithubReposOut, Integer, Hash)>] GithubReposOut data, response status code and response headers
|
|
741
|
+
def get_integrations_github_repos_with_http_info(opts = {})
|
|
742
|
+
if @api_client.config.debugging
|
|
743
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_github_repos ...'
|
|
744
|
+
end
|
|
745
|
+
# resource path
|
|
746
|
+
local_var_path = '/v1/integrations/github/repos'
|
|
747
|
+
|
|
748
|
+
# query parameters
|
|
749
|
+
query_params = opts[:query_params] || {}
|
|
750
|
+
|
|
751
|
+
# header parameters
|
|
752
|
+
header_params = opts[:header_params] || {}
|
|
753
|
+
# HTTP header 'Accept' (if needed)
|
|
754
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
755
|
+
|
|
756
|
+
# form parameters
|
|
757
|
+
form_params = opts[:form_params] || {}
|
|
758
|
+
|
|
759
|
+
# http body (model)
|
|
760
|
+
post_body = opts[:debug_body]
|
|
761
|
+
|
|
762
|
+
# return_type
|
|
763
|
+
return_type = opts[:debug_return_type] || 'GithubReposOut'
|
|
764
|
+
|
|
765
|
+
# auth_names
|
|
766
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
767
|
+
|
|
768
|
+
new_options = opts.merge(
|
|
769
|
+
:operation => :"IntegrationsApi.get_integrations_github_repos",
|
|
770
|
+
:header_params => header_params,
|
|
771
|
+
:query_params => query_params,
|
|
772
|
+
:form_params => form_params,
|
|
773
|
+
:body => post_body,
|
|
774
|
+
:auth_names => auth_names,
|
|
775
|
+
:return_type => return_type
|
|
776
|
+
)
|
|
777
|
+
|
|
778
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
779
|
+
if @api_client.config.debugging
|
|
780
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_github_repos\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
781
|
+
end
|
|
782
|
+
return data, status_code, headers
|
|
783
|
+
end
|
|
784
|
+
|
|
785
|
+
# Returns the repo's Pages status, live URL, custom domain and build source.
|
|
786
|
+
# Returns the repo's Pages status, live URL, custom domain and build source. The repo is resolved against the org installation's GRANTED set, so a caller can never address a repo the App was not granted; 404 when the repo has no Pages site.
|
|
787
|
+
# @param repo [String] Repo is the repository's short name within the org's installation, with no owner prefix (the owner is server-derived from the grant). A trailing \".git\" is stripped.
|
|
788
|
+
# @param [Hash] opts the optional parameters
|
|
789
|
+
# @return [GithubPagesView]
|
|
790
|
+
def get_integrations_github_repos_by_repo_pages(repo, opts = {})
|
|
791
|
+
data, _status_code, _headers = get_integrations_github_repos_by_repo_pages_with_http_info(repo, opts)
|
|
792
|
+
data
|
|
793
|
+
end
|
|
794
|
+
|
|
795
|
+
# Returns the repo's Pages status, live URL, custom domain and build source.
|
|
796
|
+
# Returns the repo's Pages status, live URL, custom domain and build source. The repo is resolved against the org installation's GRANTED set, so a caller can never address a repo the App was not granted; 404 when the repo has no Pages site.
|
|
797
|
+
# @param repo [String] Repo is the repository's short name within the org's installation, with no owner prefix (the owner is server-derived from the grant). A trailing \".git\" is stripped.
|
|
798
|
+
# @param [Hash] opts the optional parameters
|
|
799
|
+
# @return [Array<(GithubPagesView, Integer, Hash)>] GithubPagesView data, response status code and response headers
|
|
800
|
+
def get_integrations_github_repos_by_repo_pages_with_http_info(repo, opts = {})
|
|
801
|
+
if @api_client.config.debugging
|
|
802
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_github_repos_by_repo_pages ...'
|
|
803
|
+
end
|
|
804
|
+
# verify the required parameter 'repo' is set
|
|
805
|
+
if @api_client.config.client_side_validation && repo.nil?
|
|
806
|
+
fail ArgumentError, "Missing the required parameter 'repo' when calling IntegrationsApi.get_integrations_github_repos_by_repo_pages"
|
|
807
|
+
end
|
|
808
|
+
# resource path
|
|
809
|
+
local_var_path = '/v1/integrations/github/repos/{repo}/pages'.sub('{' + 'repo' + '}', CGI.escape(repo.to_s))
|
|
810
|
+
|
|
811
|
+
# query parameters
|
|
812
|
+
query_params = opts[:query_params] || {}
|
|
813
|
+
|
|
814
|
+
# header parameters
|
|
815
|
+
header_params = opts[:header_params] || {}
|
|
816
|
+
# HTTP header 'Accept' (if needed)
|
|
817
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
818
|
+
|
|
819
|
+
# form parameters
|
|
820
|
+
form_params = opts[:form_params] || {}
|
|
821
|
+
|
|
822
|
+
# http body (model)
|
|
823
|
+
post_body = opts[:debug_body]
|
|
824
|
+
|
|
825
|
+
# return_type
|
|
826
|
+
return_type = opts[:debug_return_type] || 'GithubPagesView'
|
|
827
|
+
|
|
828
|
+
# auth_names
|
|
829
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
830
|
+
|
|
831
|
+
new_options = opts.merge(
|
|
832
|
+
:operation => :"IntegrationsApi.get_integrations_github_repos_by_repo_pages",
|
|
833
|
+
:header_params => header_params,
|
|
834
|
+
:query_params => query_params,
|
|
835
|
+
:form_params => form_params,
|
|
836
|
+
:body => post_body,
|
|
837
|
+
:auth_names => auth_names,
|
|
838
|
+
:return_type => return_type
|
|
839
|
+
)
|
|
840
|
+
|
|
841
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
842
|
+
if @api_client.config.debugging
|
|
843
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_github_repos_by_repo_pages\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
844
|
+
end
|
|
845
|
+
return data, status_code, headers
|
|
846
|
+
end
|
|
847
|
+
|
|
848
|
+
# Lists the projects the org's GitLab connection can reach — membership projects, most recently active first.
|
|
849
|
+
# Lists the projects the org's GitLab connection can reach — membership projects, most recently active first.
|
|
850
|
+
# @param [Hash] opts the optional parameters
|
|
851
|
+
# @return [GitlabProjectsOut]
|
|
852
|
+
def get_integrations_gitlab_projects(opts = {})
|
|
853
|
+
data, _status_code, _headers = get_integrations_gitlab_projects_with_http_info(opts)
|
|
854
|
+
data
|
|
855
|
+
end
|
|
856
|
+
|
|
857
|
+
# Lists the projects the org's GitLab connection can reach — membership projects, most recently active first.
|
|
858
|
+
# Lists the projects the org's GitLab connection can reach — membership projects, most recently active first.
|
|
859
|
+
# @param [Hash] opts the optional parameters
|
|
860
|
+
# @return [Array<(GitlabProjectsOut, Integer, Hash)>] GitlabProjectsOut data, response status code and response headers
|
|
861
|
+
def get_integrations_gitlab_projects_with_http_info(opts = {})
|
|
862
|
+
if @api_client.config.debugging
|
|
863
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_gitlab_projects ...'
|
|
864
|
+
end
|
|
865
|
+
# resource path
|
|
866
|
+
local_var_path = '/v1/integrations/gitlab/projects'
|
|
867
|
+
|
|
868
|
+
# query parameters
|
|
869
|
+
query_params = opts[:query_params] || {}
|
|
870
|
+
|
|
871
|
+
# header parameters
|
|
872
|
+
header_params = opts[:header_params] || {}
|
|
873
|
+
# HTTP header 'Accept' (if needed)
|
|
874
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
875
|
+
|
|
876
|
+
# form parameters
|
|
877
|
+
form_params = opts[:form_params] || {}
|
|
878
|
+
|
|
879
|
+
# http body (model)
|
|
880
|
+
post_body = opts[:debug_body]
|
|
881
|
+
|
|
882
|
+
# return_type
|
|
883
|
+
return_type = opts[:debug_return_type] || 'GitlabProjectsOut'
|
|
884
|
+
|
|
885
|
+
# auth_names
|
|
886
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
887
|
+
|
|
888
|
+
new_options = opts.merge(
|
|
889
|
+
:operation => :"IntegrationsApi.get_integrations_gitlab_projects",
|
|
890
|
+
:header_params => header_params,
|
|
891
|
+
:query_params => query_params,
|
|
892
|
+
:form_params => form_params,
|
|
893
|
+
:body => post_body,
|
|
894
|
+
:auth_names => auth_names,
|
|
895
|
+
:return_type => return_type
|
|
896
|
+
)
|
|
897
|
+
|
|
898
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
899
|
+
if @api_client.config.debugging
|
|
900
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_gitlab_projects\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
901
|
+
end
|
|
902
|
+
return data, status_code, headers
|
|
903
|
+
end
|
|
904
|
+
|
|
905
|
+
# Install the Hanzo app into a Slack workspace
|
|
906
|
+
# The address behind Slack's \"Add to Slack\" and Marketplace Install buttons. It answers a 302 to Slack's own consent screen and does nothing else — it is a redirector by design. It exists because Slack refuses a slack.com URL in that field and requires one of ours that redirects there, which makes the field an ATTRIBUTION hook: routing the click through our own address is what lets an install be counted, and always answering the redirect is what keeps the counter from becoming a detour that never reaches consent. The destination is the same consent URL every time, built from the same scopes the console's Connect button asks for, so a workspace is asked to grant one thing however the install began. It is PUBLIC and carries no principal, because whoever clicks Install in Slack's directory has no Hanzo session yet. It binds no org either, and that is deliberate rather than missing: the org is resolved at the shared provider callback, from the signed state a console connect minted or from the workspace's existing connection. Minting an org for an anonymous click is the one thing that would break tenant isolation, so an install begun here finishes under exactly the rules every other install obeys. Where the app is not configured it answers 503, rather than a consent URL carrying an empty client_id that Slack would render as its own dead-end error page.
|
|
907
|
+
# @param [Hash] opts the optional parameters
|
|
908
|
+
# @return [nil]
|
|
909
|
+
def get_integrations_slack_install(opts = {})
|
|
910
|
+
get_integrations_slack_install_with_http_info(opts)
|
|
911
|
+
nil
|
|
912
|
+
end
|
|
913
|
+
|
|
914
|
+
# Install the Hanzo app into a Slack workspace
|
|
915
|
+
# The address behind Slack's \"Add to Slack\" and Marketplace Install buttons. It answers a 302 to Slack's own consent screen and does nothing else — it is a redirector by design. It exists because Slack refuses a slack.com URL in that field and requires one of ours that redirects there, which makes the field an ATTRIBUTION hook: routing the click through our own address is what lets an install be counted, and always answering the redirect is what keeps the counter from becoming a detour that never reaches consent. The destination is the same consent URL every time, built from the same scopes the console's Connect button asks for, so a workspace is asked to grant one thing however the install began. It is PUBLIC and carries no principal, because whoever clicks Install in Slack's directory has no Hanzo session yet. It binds no org either, and that is deliberate rather than missing: the org is resolved at the shared provider callback, from the signed state a console connect minted or from the workspace's existing connection. Minting an org for an anonymous click is the one thing that would break tenant isolation, so an install begun here finishes under exactly the rules every other install obeys. Where the app is not configured it answers 503, rather than a consent URL carrying an empty client_id that Slack would render as its own dead-end error page.
|
|
916
|
+
# @param [Hash] opts the optional parameters
|
|
917
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
918
|
+
def get_integrations_slack_install_with_http_info(opts = {})
|
|
919
|
+
if @api_client.config.debugging
|
|
920
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_slack_install ...'
|
|
921
|
+
end
|
|
922
|
+
# resource path
|
|
923
|
+
local_var_path = '/v1/integrations/slack/install'
|
|
924
|
+
|
|
925
|
+
# query parameters
|
|
926
|
+
query_params = opts[:query_params] || {}
|
|
927
|
+
|
|
928
|
+
# header parameters
|
|
929
|
+
header_params = opts[:header_params] || {}
|
|
930
|
+
|
|
931
|
+
# form parameters
|
|
932
|
+
form_params = opts[:form_params] || {}
|
|
933
|
+
|
|
934
|
+
# http body (model)
|
|
935
|
+
post_body = opts[:debug_body]
|
|
936
|
+
|
|
937
|
+
# return_type
|
|
938
|
+
return_type = opts[:debug_return_type]
|
|
939
|
+
|
|
940
|
+
# auth_names
|
|
941
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
942
|
+
|
|
943
|
+
new_options = opts.merge(
|
|
944
|
+
:operation => :"IntegrationsApi.get_integrations_slack_install",
|
|
945
|
+
:header_params => header_params,
|
|
946
|
+
:query_params => query_params,
|
|
947
|
+
:form_params => form_params,
|
|
948
|
+
:body => post_body,
|
|
949
|
+
:auth_names => auth_names,
|
|
950
|
+
:return_type => return_type
|
|
951
|
+
)
|
|
952
|
+
|
|
953
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
954
|
+
if @api_client.config.debugging
|
|
955
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_slack_install\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
956
|
+
end
|
|
957
|
+
return data, status_code, headers
|
|
958
|
+
end
|
|
959
|
+
|
|
960
|
+
# Begin linking a Hanzo account from Slack
|
|
961
|
+
# The entry point behind the connect prompt Hanzo posts in Slack. It starts a link session in the browser and redirects to Slack's own sign-in, which is what proves which Slack user is asking. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
962
|
+
# @param [Hash] opts the optional parameters
|
|
963
|
+
# @return [nil]
|
|
964
|
+
def get_integrations_slack_link(opts = {})
|
|
965
|
+
get_integrations_slack_link_with_http_info(opts)
|
|
966
|
+
nil
|
|
967
|
+
end
|
|
968
|
+
|
|
969
|
+
# Begin linking a Hanzo account from Slack
|
|
970
|
+
# The entry point behind the connect prompt Hanzo posts in Slack. It starts a link session in the browser and redirects to Slack's own sign-in, which is what proves which Slack user is asking. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
971
|
+
# @param [Hash] opts the optional parameters
|
|
972
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
973
|
+
def get_integrations_slack_link_with_http_info(opts = {})
|
|
974
|
+
if @api_client.config.debugging
|
|
975
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_slack_link ...'
|
|
976
|
+
end
|
|
977
|
+
# resource path
|
|
978
|
+
local_var_path = '/v1/integrations/slack/link'
|
|
979
|
+
|
|
980
|
+
# query parameters
|
|
981
|
+
query_params = opts[:query_params] || {}
|
|
982
|
+
|
|
983
|
+
# header parameters
|
|
984
|
+
header_params = opts[:header_params] || {}
|
|
985
|
+
|
|
986
|
+
# form parameters
|
|
987
|
+
form_params = opts[:form_params] || {}
|
|
988
|
+
|
|
989
|
+
# http body (model)
|
|
990
|
+
post_body = opts[:debug_body]
|
|
991
|
+
|
|
992
|
+
# return_type
|
|
993
|
+
return_type = opts[:debug_return_type]
|
|
994
|
+
|
|
995
|
+
# auth_names
|
|
996
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
997
|
+
|
|
998
|
+
new_options = opts.merge(
|
|
999
|
+
:operation => :"IntegrationsApi.get_integrations_slack_link",
|
|
1000
|
+
:header_params => header_params,
|
|
1001
|
+
:query_params => query_params,
|
|
1002
|
+
:form_params => form_params,
|
|
1003
|
+
:body => post_body,
|
|
1004
|
+
:auth_names => auth_names,
|
|
1005
|
+
:return_type => return_type
|
|
1006
|
+
)
|
|
1007
|
+
|
|
1008
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1009
|
+
if @api_client.config.debugging
|
|
1010
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_slack_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1011
|
+
end
|
|
1012
|
+
return data, status_code, headers
|
|
1013
|
+
end
|
|
1014
|
+
|
|
1015
|
+
# Complete the Slack account link
|
|
1016
|
+
# The final leg: the user has proved both who they are in Slack and who they are in Hanzo, and this binds the two. It answers a short confirmation page telling them to return to Slack. The Hanzo credential obtained here is sealed into the connected workspace's own KMS namespace; it is never written to a database column and never logged. A deployment whose secret store is unavailable refuses the link rather than completing it without custody of the credential. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1017
|
+
# @param [Hash] opts the optional parameters
|
|
1018
|
+
# @return [nil]
|
|
1019
|
+
def get_integrations_slack_link_callback(opts = {})
|
|
1020
|
+
get_integrations_slack_link_callback_with_http_info(opts)
|
|
1021
|
+
nil
|
|
1022
|
+
end
|
|
1023
|
+
|
|
1024
|
+
# Complete the Slack account link
|
|
1025
|
+
# The final leg: the user has proved both who they are in Slack and who they are in Hanzo, and this binds the two. It answers a short confirmation page telling them to return to Slack. The Hanzo credential obtained here is sealed into the connected workspace's own KMS namespace; it is never written to a database column and never logged. A deployment whose secret store is unavailable refuses the link rather than completing it without custody of the credential. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1026
|
+
# @param [Hash] opts the optional parameters
|
|
1027
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1028
|
+
def get_integrations_slack_link_callback_with_http_info(opts = {})
|
|
1029
|
+
if @api_client.config.debugging
|
|
1030
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_slack_link_callback ...'
|
|
1031
|
+
end
|
|
1032
|
+
# resource path
|
|
1033
|
+
local_var_path = '/v1/integrations/slack/link/callback'
|
|
1034
|
+
|
|
1035
|
+
# query parameters
|
|
1036
|
+
query_params = opts[:query_params] || {}
|
|
1037
|
+
|
|
1038
|
+
# header parameters
|
|
1039
|
+
header_params = opts[:header_params] || {}
|
|
1040
|
+
|
|
1041
|
+
# form parameters
|
|
1042
|
+
form_params = opts[:form_params] || {}
|
|
1043
|
+
|
|
1044
|
+
# http body (model)
|
|
1045
|
+
post_body = opts[:debug_body]
|
|
1046
|
+
|
|
1047
|
+
# return_type
|
|
1048
|
+
return_type = opts[:debug_return_type]
|
|
1049
|
+
|
|
1050
|
+
# auth_names
|
|
1051
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1052
|
+
|
|
1053
|
+
new_options = opts.merge(
|
|
1054
|
+
:operation => :"IntegrationsApi.get_integrations_slack_link_callback",
|
|
1055
|
+
:header_params => header_params,
|
|
1056
|
+
:query_params => query_params,
|
|
1057
|
+
:form_params => form_params,
|
|
1058
|
+
:body => post_body,
|
|
1059
|
+
:auth_names => auth_names,
|
|
1060
|
+
:return_type => return_type
|
|
1061
|
+
)
|
|
1062
|
+
|
|
1063
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1064
|
+
if @api_client.config.debugging
|
|
1065
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_slack_link_callback\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1066
|
+
end
|
|
1067
|
+
return data, status_code, headers
|
|
1068
|
+
end
|
|
1069
|
+
|
|
1070
|
+
# Slack sign-in return leg
|
|
1071
|
+
# Where Slack returns the user after they sign in. It establishes the verified Slack workspace and user, confirms that workspace is connected to an org, and hands the browser on to the Hanzo sign-in that completes the link. The verified pair is carried onward in a host-bound cookie rather than in the URL, so the identity being linked cannot be edited in transit. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1072
|
+
# @param [Hash] opts the optional parameters
|
|
1073
|
+
# @return [nil]
|
|
1074
|
+
def get_integrations_slack_link_slack(opts = {})
|
|
1075
|
+
get_integrations_slack_link_slack_with_http_info(opts)
|
|
1076
|
+
nil
|
|
1077
|
+
end
|
|
1078
|
+
|
|
1079
|
+
# Slack sign-in return leg
|
|
1080
|
+
# Where Slack returns the user after they sign in. It establishes the verified Slack workspace and user, confirms that workspace is connected to an org, and hands the browser on to the Hanzo sign-in that completes the link. The verified pair is carried onward in a host-bound cookie rather than in the URL, so the identity being linked cannot be edited in transit. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1081
|
+
# @param [Hash] opts the optional parameters
|
|
1082
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1083
|
+
def get_integrations_slack_link_slack_with_http_info(opts = {})
|
|
1084
|
+
if @api_client.config.debugging
|
|
1085
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_slack_link_slack ...'
|
|
1086
|
+
end
|
|
1087
|
+
# resource path
|
|
1088
|
+
local_var_path = '/v1/integrations/slack/link/slack'
|
|
1089
|
+
|
|
1090
|
+
# query parameters
|
|
1091
|
+
query_params = opts[:query_params] || {}
|
|
1092
|
+
|
|
1093
|
+
# header parameters
|
|
1094
|
+
header_params = opts[:header_params] || {}
|
|
1095
|
+
|
|
1096
|
+
# form parameters
|
|
1097
|
+
form_params = opts[:form_params] || {}
|
|
1098
|
+
|
|
1099
|
+
# http body (model)
|
|
1100
|
+
post_body = opts[:debug_body]
|
|
1101
|
+
|
|
1102
|
+
# return_type
|
|
1103
|
+
return_type = opts[:debug_return_type]
|
|
1104
|
+
|
|
1105
|
+
# auth_names
|
|
1106
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1107
|
+
|
|
1108
|
+
new_options = opts.merge(
|
|
1109
|
+
:operation => :"IntegrationsApi.get_integrations_slack_link_slack",
|
|
1110
|
+
:header_params => header_params,
|
|
1111
|
+
:query_params => query_params,
|
|
1112
|
+
:form_params => form_params,
|
|
1113
|
+
:body => post_body,
|
|
1114
|
+
:auth_names => auth_names,
|
|
1115
|
+
:return_type => return_type
|
|
1116
|
+
)
|
|
1117
|
+
|
|
1118
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1119
|
+
if @api_client.config.debugging
|
|
1120
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_slack_link_slack\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1121
|
+
end
|
|
1122
|
+
return data, status_code, headers
|
|
1123
|
+
end
|
|
1124
|
+
|
|
1125
|
+
# Begin linking a Hanzo account from Teams
|
|
1126
|
+
# The entry point behind the connect prompt Hanzo shows in Teams. It starts a link session and redirects to Microsoft sign-in addressed to the CHAT'S OWN tenant, not the common endpoint, so only a member of that tenant can complete it. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1127
|
+
# @param [Hash] opts the optional parameters
|
|
1128
|
+
# @return [nil]
|
|
1129
|
+
def get_integrations_teams_link(opts = {})
|
|
1130
|
+
get_integrations_teams_link_with_http_info(opts)
|
|
1131
|
+
nil
|
|
1132
|
+
end
|
|
1133
|
+
|
|
1134
|
+
# Begin linking a Hanzo account from Teams
|
|
1135
|
+
# The entry point behind the connect prompt Hanzo shows in Teams. It starts a link session and redirects to Microsoft sign-in addressed to the CHAT'S OWN tenant, not the common endpoint, so only a member of that tenant can complete it. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1136
|
+
# @param [Hash] opts the optional parameters
|
|
1137
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1138
|
+
def get_integrations_teams_link_with_http_info(opts = {})
|
|
1139
|
+
if @api_client.config.debugging
|
|
1140
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_teams_link ...'
|
|
1141
|
+
end
|
|
1142
|
+
# resource path
|
|
1143
|
+
local_var_path = '/v1/integrations/teams/link'
|
|
1144
|
+
|
|
1145
|
+
# query parameters
|
|
1146
|
+
query_params = opts[:query_params] || {}
|
|
1147
|
+
|
|
1148
|
+
# header parameters
|
|
1149
|
+
header_params = opts[:header_params] || {}
|
|
1150
|
+
|
|
1151
|
+
# form parameters
|
|
1152
|
+
form_params = opts[:form_params] || {}
|
|
1153
|
+
|
|
1154
|
+
# http body (model)
|
|
1155
|
+
post_body = opts[:debug_body]
|
|
1156
|
+
|
|
1157
|
+
# return_type
|
|
1158
|
+
return_type = opts[:debug_return_type]
|
|
1159
|
+
|
|
1160
|
+
# auth_names
|
|
1161
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1162
|
+
|
|
1163
|
+
new_options = opts.merge(
|
|
1164
|
+
:operation => :"IntegrationsApi.get_integrations_teams_link",
|
|
1165
|
+
:header_params => header_params,
|
|
1166
|
+
:query_params => query_params,
|
|
1167
|
+
:form_params => form_params,
|
|
1168
|
+
:body => post_body,
|
|
1169
|
+
:auth_names => auth_names,
|
|
1170
|
+
:return_type => return_type
|
|
1171
|
+
)
|
|
1172
|
+
|
|
1173
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1174
|
+
if @api_client.config.debugging
|
|
1175
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_teams_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1176
|
+
end
|
|
1177
|
+
return data, status_code, headers
|
|
1178
|
+
end
|
|
1179
|
+
|
|
1180
|
+
# Microsoft sign-in return leg
|
|
1181
|
+
# Where Microsoft returns the user after sign-in. It resolves the verified directory identity and then re-checks the tenant: the signed-in user's tenant must equal the tenant of the chat the link started from, so a valid Microsoft sign-in from a different organization is refused here rather than accepted. This is the leg Teams has and the other platforms do not, which is why the Teams flow has an extra address. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1182
|
+
# @param [Hash] opts the optional parameters
|
|
1183
|
+
# @return [nil]
|
|
1184
|
+
def get_integrations_teams_link_aad(opts = {})
|
|
1185
|
+
get_integrations_teams_link_aad_with_http_info(opts)
|
|
1186
|
+
nil
|
|
1187
|
+
end
|
|
1188
|
+
|
|
1189
|
+
# Microsoft sign-in return leg
|
|
1190
|
+
# Where Microsoft returns the user after sign-in. It resolves the verified directory identity and then re-checks the tenant: the signed-in user's tenant must equal the tenant of the chat the link started from, so a valid Microsoft sign-in from a different organization is refused here rather than accepted. This is the leg Teams has and the other platforms do not, which is why the Teams flow has an extra address. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1191
|
+
# @param [Hash] opts the optional parameters
|
|
1192
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1193
|
+
def get_integrations_teams_link_aad_with_http_info(opts = {})
|
|
1194
|
+
if @api_client.config.debugging
|
|
1195
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_teams_link_aad ...'
|
|
1196
|
+
end
|
|
1197
|
+
# resource path
|
|
1198
|
+
local_var_path = '/v1/integrations/teams/link/aad'
|
|
1199
|
+
|
|
1200
|
+
# query parameters
|
|
1201
|
+
query_params = opts[:query_params] || {}
|
|
1202
|
+
|
|
1203
|
+
# header parameters
|
|
1204
|
+
header_params = opts[:header_params] || {}
|
|
1205
|
+
|
|
1206
|
+
# form parameters
|
|
1207
|
+
form_params = opts[:form_params] || {}
|
|
1208
|
+
|
|
1209
|
+
# http body (model)
|
|
1210
|
+
post_body = opts[:debug_body]
|
|
1211
|
+
|
|
1212
|
+
# return_type
|
|
1213
|
+
return_type = opts[:debug_return_type]
|
|
1214
|
+
|
|
1215
|
+
# auth_names
|
|
1216
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1217
|
+
|
|
1218
|
+
new_options = opts.merge(
|
|
1219
|
+
:operation => :"IntegrationsApi.get_integrations_teams_link_aad",
|
|
1220
|
+
:header_params => header_params,
|
|
1221
|
+
:query_params => query_params,
|
|
1222
|
+
:form_params => form_params,
|
|
1223
|
+
:body => post_body,
|
|
1224
|
+
:auth_names => auth_names,
|
|
1225
|
+
:return_type => return_type
|
|
1226
|
+
)
|
|
1227
|
+
|
|
1228
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1229
|
+
if @api_client.config.debugging
|
|
1230
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_teams_link_aad\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1231
|
+
end
|
|
1232
|
+
return data, status_code, headers
|
|
1233
|
+
end
|
|
1234
|
+
|
|
1235
|
+
# Complete the Teams account link
|
|
1236
|
+
# The final leg: it binds the verified directory identity to the Hanzo account that just signed in, and answers a short confirmation page telling them to return to Teams. The Hanzo credential is sealed into the connected org's KMS namespace. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1237
|
+
# @param [Hash] opts the optional parameters
|
|
1238
|
+
# @return [nil]
|
|
1239
|
+
def get_integrations_teams_link_callback(opts = {})
|
|
1240
|
+
get_integrations_teams_link_callback_with_http_info(opts)
|
|
1241
|
+
nil
|
|
1242
|
+
end
|
|
1243
|
+
|
|
1244
|
+
# Complete the Teams account link
|
|
1245
|
+
# The final leg: it binds the verified directory identity to the Hanzo account that just signed in, and answers a short confirmation page telling them to return to Teams. The Hanzo credential is sealed into the connected org's KMS namespace. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1246
|
+
# @param [Hash] opts the optional parameters
|
|
1247
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1248
|
+
def get_integrations_teams_link_callback_with_http_info(opts = {})
|
|
1249
|
+
if @api_client.config.debugging
|
|
1250
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_teams_link_callback ...'
|
|
1251
|
+
end
|
|
1252
|
+
# resource path
|
|
1253
|
+
local_var_path = '/v1/integrations/teams/link/callback'
|
|
1254
|
+
|
|
1255
|
+
# query parameters
|
|
1256
|
+
query_params = opts[:query_params] || {}
|
|
1257
|
+
|
|
1258
|
+
# header parameters
|
|
1259
|
+
header_params = opts[:header_params] || {}
|
|
1260
|
+
|
|
1261
|
+
# form parameters
|
|
1262
|
+
form_params = opts[:form_params] || {}
|
|
1263
|
+
|
|
1264
|
+
# http body (model)
|
|
1265
|
+
post_body = opts[:debug_body]
|
|
1266
|
+
|
|
1267
|
+
# return_type
|
|
1268
|
+
return_type = opts[:debug_return_type]
|
|
1269
|
+
|
|
1270
|
+
# auth_names
|
|
1271
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1272
|
+
|
|
1273
|
+
new_options = opts.merge(
|
|
1274
|
+
:operation => :"IntegrationsApi.get_integrations_teams_link_callback",
|
|
1275
|
+
:header_params => header_params,
|
|
1276
|
+
:query_params => query_params,
|
|
1277
|
+
:form_params => form_params,
|
|
1278
|
+
:body => post_body,
|
|
1279
|
+
:auth_names => auth_names,
|
|
1280
|
+
:return_type => return_type
|
|
1281
|
+
)
|
|
1282
|
+
|
|
1283
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1284
|
+
if @api_client.config.debugging
|
|
1285
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_teams_link_callback\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1286
|
+
end
|
|
1287
|
+
return data, status_code, headers
|
|
1288
|
+
end
|
|
1289
|
+
|
|
1290
|
+
# Begin linking a Hanzo account from Telegram
|
|
1291
|
+
# The entry point behind the connect prompt Hanzo sends in Telegram. Unlike the other platforms it answers an HTML PAGE rather than a redirect: Telegram has no OAuth flow, so the page hosts Telegram's Login Widget, and the browser is sent onward only after the user signs in through it. The widget only appears on the domain registered for the bot, so a deployment whose bot domain is unset renders a page with nothing on it. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1292
|
+
# @param [Hash] opts the optional parameters
|
|
1293
|
+
# @return [nil]
|
|
1294
|
+
def get_integrations_telegram_link(opts = {})
|
|
1295
|
+
get_integrations_telegram_link_with_http_info(opts)
|
|
1296
|
+
nil
|
|
1297
|
+
end
|
|
1298
|
+
|
|
1299
|
+
# Begin linking a Hanzo account from Telegram
|
|
1300
|
+
# The entry point behind the connect prompt Hanzo sends in Telegram. Unlike the other platforms it answers an HTML PAGE rather than a redirect: Telegram has no OAuth flow, so the page hosts Telegram's Login Widget, and the browser is sent onward only after the user signs in through it. The widget only appears on the domain registered for the bot, so a deployment whose bot domain is unset renders a page with nothing on it. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1301
|
+
# @param [Hash] opts the optional parameters
|
|
1302
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1303
|
+
def get_integrations_telegram_link_with_http_info(opts = {})
|
|
1304
|
+
if @api_client.config.debugging
|
|
1305
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_telegram_link ...'
|
|
1306
|
+
end
|
|
1307
|
+
# resource path
|
|
1308
|
+
local_var_path = '/v1/integrations/telegram/link'
|
|
1309
|
+
|
|
1310
|
+
# query parameters
|
|
1311
|
+
query_params = opts[:query_params] || {}
|
|
1312
|
+
|
|
1313
|
+
# header parameters
|
|
1314
|
+
header_params = opts[:header_params] || {}
|
|
1315
|
+
|
|
1316
|
+
# form parameters
|
|
1317
|
+
form_params = opts[:form_params] || {}
|
|
1318
|
+
|
|
1319
|
+
# http body (model)
|
|
1320
|
+
post_body = opts[:debug_body]
|
|
1321
|
+
|
|
1322
|
+
# return_type
|
|
1323
|
+
return_type = opts[:debug_return_type]
|
|
1324
|
+
|
|
1325
|
+
# auth_names
|
|
1326
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1327
|
+
|
|
1328
|
+
new_options = opts.merge(
|
|
1329
|
+
:operation => :"IntegrationsApi.get_integrations_telegram_link",
|
|
1330
|
+
:header_params => header_params,
|
|
1331
|
+
:query_params => query_params,
|
|
1332
|
+
:form_params => form_params,
|
|
1333
|
+
:body => post_body,
|
|
1334
|
+
:auth_names => auth_names,
|
|
1335
|
+
:return_type => return_type
|
|
1336
|
+
)
|
|
1337
|
+
|
|
1338
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1339
|
+
if @api_client.config.debugging
|
|
1340
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_telegram_link\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1341
|
+
end
|
|
1342
|
+
return data, status_code, headers
|
|
1343
|
+
end
|
|
1344
|
+
|
|
1345
|
+
# Telegram Login Widget return leg
|
|
1346
|
+
# Where Telegram's Login Widget sends the user with its signed authentication data. That data is verified against the bot token — this is the identity source, and it is the widget's signature rather than a code exchange — and the chat is confirmed to be bound to an org before the browser is handed to the Hanzo sign-in. Widget data is only accepted while it is fresh, so a captured sign-in blob cannot be replayed later even though its signature stays valid. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1347
|
+
# @param [Hash] opts the optional parameters
|
|
1348
|
+
# @return [nil]
|
|
1349
|
+
def get_integrations_telegram_link_auth(opts = {})
|
|
1350
|
+
get_integrations_telegram_link_auth_with_http_info(opts)
|
|
1351
|
+
nil
|
|
1352
|
+
end
|
|
1353
|
+
|
|
1354
|
+
# Telegram Login Widget return leg
|
|
1355
|
+
# Where Telegram's Login Widget sends the user with its signed authentication data. That data is verified against the bot token — this is the identity source, and it is the widget's signature rather than a code exchange — and the chat is confirmed to be bound to an org before the browser is handed to the Hanzo sign-in. Widget data is only accepted while it is fresh, so a captured sign-in blob cannot be replayed later even though its signature stays valid. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1356
|
+
# @param [Hash] opts the optional parameters
|
|
1357
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1358
|
+
def get_integrations_telegram_link_auth_with_http_info(opts = {})
|
|
1359
|
+
if @api_client.config.debugging
|
|
1360
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_telegram_link_auth ...'
|
|
1361
|
+
end
|
|
1362
|
+
# resource path
|
|
1363
|
+
local_var_path = '/v1/integrations/telegram/link/auth'
|
|
1364
|
+
|
|
1365
|
+
# query parameters
|
|
1366
|
+
query_params = opts[:query_params] || {}
|
|
1367
|
+
|
|
1368
|
+
# header parameters
|
|
1369
|
+
header_params = opts[:header_params] || {}
|
|
1370
|
+
|
|
1371
|
+
# form parameters
|
|
1372
|
+
form_params = opts[:form_params] || {}
|
|
1373
|
+
|
|
1374
|
+
# http body (model)
|
|
1375
|
+
post_body = opts[:debug_body]
|
|
1376
|
+
|
|
1377
|
+
# return_type
|
|
1378
|
+
return_type = opts[:debug_return_type]
|
|
1379
|
+
|
|
1380
|
+
# auth_names
|
|
1381
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1382
|
+
|
|
1383
|
+
new_options = opts.merge(
|
|
1384
|
+
:operation => :"IntegrationsApi.get_integrations_telegram_link_auth",
|
|
1385
|
+
:header_params => header_params,
|
|
1386
|
+
:query_params => query_params,
|
|
1387
|
+
:form_params => form_params,
|
|
1388
|
+
:body => post_body,
|
|
1389
|
+
:auth_names => auth_names,
|
|
1390
|
+
:return_type => return_type
|
|
1391
|
+
)
|
|
1392
|
+
|
|
1393
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1394
|
+
if @api_client.config.debugging
|
|
1395
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_telegram_link_auth\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1396
|
+
end
|
|
1397
|
+
return data, status_code, headers
|
|
1398
|
+
end
|
|
1399
|
+
|
|
1400
|
+
# Complete the Telegram account link
|
|
1401
|
+
# The final leg: it binds the verified Telegram user to the Hanzo account that just signed in, and answers a short confirmation page telling them to return to Telegram. The Hanzo credential is sealed into the connected org's KMS namespace. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1402
|
+
# @param [Hash] opts the optional parameters
|
|
1403
|
+
# @return [nil]
|
|
1404
|
+
def get_integrations_telegram_link_callback(opts = {})
|
|
1405
|
+
get_integrations_telegram_link_callback_with_http_info(opts)
|
|
1406
|
+
nil
|
|
1407
|
+
end
|
|
1408
|
+
|
|
1409
|
+
# Complete the Telegram account link
|
|
1410
|
+
# The final leg: it binds the verified Telegram user to the Hanzo account that just signed in, and answers a short confirmation page telling them to return to Telegram. The Hanzo credential is sealed into the connected org's KMS namespace. This is one leg of a three-leg flow, and the legs are not interchangeable: a browser is expected to arrive here only from the leg before it. The link URL's state proves the prompt was server-minted and carries the CHAT it started from — it is provenance only, and it never decides which account gets linked. The account identity always comes from the platform's own verified sign-in and a host-bound cookie, so forwarding a link to someone else cannot bind their account, and a session lifted into another browser is refused rather than completed. Each link is single-use, and a deployment without linking configured answers 503.
|
|
1411
|
+
# @param [Hash] opts the optional parameters
|
|
1412
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1413
|
+
def get_integrations_telegram_link_callback_with_http_info(opts = {})
|
|
1414
|
+
if @api_client.config.debugging
|
|
1415
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_telegram_link_callback ...'
|
|
1416
|
+
end
|
|
1417
|
+
# resource path
|
|
1418
|
+
local_var_path = '/v1/integrations/telegram/link/callback'
|
|
1419
|
+
|
|
1420
|
+
# query parameters
|
|
1421
|
+
query_params = opts[:query_params] || {}
|
|
1422
|
+
|
|
1423
|
+
# header parameters
|
|
1424
|
+
header_params = opts[:header_params] || {}
|
|
1425
|
+
|
|
1426
|
+
# form parameters
|
|
1427
|
+
form_params = opts[:form_params] || {}
|
|
1428
|
+
|
|
1429
|
+
# http body (model)
|
|
1430
|
+
post_body = opts[:debug_body]
|
|
1431
|
+
|
|
1432
|
+
# return_type
|
|
1433
|
+
return_type = opts[:debug_return_type]
|
|
1434
|
+
|
|
1435
|
+
# auth_names
|
|
1436
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1437
|
+
|
|
1438
|
+
new_options = opts.merge(
|
|
1439
|
+
:operation => :"IntegrationsApi.get_integrations_telegram_link_callback",
|
|
1440
|
+
:header_params => header_params,
|
|
1441
|
+
:query_params => query_params,
|
|
1442
|
+
:form_params => form_params,
|
|
1443
|
+
:body => post_body,
|
|
1444
|
+
:auth_names => auth_names,
|
|
1445
|
+
:return_type => return_type
|
|
1446
|
+
)
|
|
1447
|
+
|
|
1448
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1449
|
+
if @api_client.config.debugging
|
|
1450
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_telegram_link_callback\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1451
|
+
end
|
|
1452
|
+
return data, status_code, headers
|
|
1453
|
+
end
|
|
1454
|
+
|
|
1455
|
+
# WhatsApp Cloud API subscription challenge
|
|
1456
|
+
# Meta calls this once when the webhook is subscribed, carrying the verify token this deployment was configured with and a challenge to echo. The token is compared in constant time before the echo — answering the challenge without checking it would let anyone point their own app at this address and have it confirm the subscription.
|
|
1457
|
+
# @param [Hash] opts the optional parameters
|
|
1458
|
+
# @return [nil]
|
|
1459
|
+
def get_integrations_whatsapp_webhook(opts = {})
|
|
1460
|
+
get_integrations_whatsapp_webhook_with_http_info(opts)
|
|
1461
|
+
nil
|
|
1462
|
+
end
|
|
1463
|
+
|
|
1464
|
+
# WhatsApp Cloud API subscription challenge
|
|
1465
|
+
# Meta calls this once when the webhook is subscribed, carrying the verify token this deployment was configured with and a challenge to echo. The token is compared in constant time before the echo — answering the challenge without checking it would let anyone point their own app at this address and have it confirm the subscription.
|
|
1466
|
+
# @param [Hash] opts the optional parameters
|
|
1467
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
1468
|
+
def get_integrations_whatsapp_webhook_with_http_info(opts = {})
|
|
1469
|
+
if @api_client.config.debugging
|
|
1470
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.get_integrations_whatsapp_webhook ...'
|
|
1471
|
+
end
|
|
1472
|
+
# resource path
|
|
1473
|
+
local_var_path = '/v1/integrations/whatsapp/webhook'
|
|
1474
|
+
|
|
1475
|
+
# query parameters
|
|
1476
|
+
query_params = opts[:query_params] || {}
|
|
1477
|
+
|
|
1478
|
+
# header parameters
|
|
1479
|
+
header_params = opts[:header_params] || {}
|
|
1480
|
+
|
|
1481
|
+
# form parameters
|
|
1482
|
+
form_params = opts[:form_params] || {}
|
|
1483
|
+
|
|
1484
|
+
# http body (model)
|
|
1485
|
+
post_body = opts[:debug_body]
|
|
1486
|
+
|
|
1487
|
+
# return_type
|
|
1488
|
+
return_type = opts[:debug_return_type]
|
|
1489
|
+
|
|
1490
|
+
# auth_names
|
|
1491
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1492
|
+
|
|
1493
|
+
new_options = opts.merge(
|
|
1494
|
+
:operation => :"IntegrationsApi.get_integrations_whatsapp_webhook",
|
|
1495
|
+
:header_params => header_params,
|
|
1496
|
+
:query_params => query_params,
|
|
1497
|
+
:form_params => form_params,
|
|
1498
|
+
:body => post_body,
|
|
1499
|
+
:auth_names => auth_names,
|
|
1500
|
+
:return_type => return_type
|
|
1501
|
+
)
|
|
1502
|
+
|
|
1503
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
1504
|
+
if @api_client.config.debugging
|
|
1505
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#get_integrations_whatsapp_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1506
|
+
end
|
|
1507
|
+
return data, status_code, headers
|
|
1508
|
+
end
|
|
1509
|
+
|
|
1510
|
+
# Acquires the org's credential for one provider.
|
|
1511
|
+
# Acquires the org's credential for one provider. It has TWO paths and the REQUEST picks which: a \"token\" key in the body seals that credential directly (verify-before-store), and its absence begins the 3-legged OAuth flow — minting a single-use nonce plus an HMAC-signed state that binds this org to this provider, and answering with the provider's authorize URL for the caller to redirect to. Fail-closed order, unchanged: no principal → 403; unknown provider → 404; an AdminOnly connector without the caller's own-org admin bit → 403; not configured → 503; KMS not ready → 503 (the flow WILL need to seal a token, so refuse now rather than dead-end at the callback).
|
|
1512
|
+
# @param provider [String] Provider is the connector's registry id, from the :provider path segment.
|
|
1513
|
+
# @param connect_in [ConnectIn]
|
|
1514
|
+
# @param [Hash] opts the optional parameters
|
|
1515
|
+
# @return [ConnectOut]
|
|
1516
|
+
def post_integrations_by_provider_connect(provider, connect_in, opts = {})
|
|
1517
|
+
data, _status_code, _headers = post_integrations_by_provider_connect_with_http_info(provider, connect_in, opts)
|
|
1518
|
+
data
|
|
1519
|
+
end
|
|
1520
|
+
|
|
1521
|
+
# Acquires the org's credential for one provider.
|
|
1522
|
+
# Acquires the org's credential for one provider. It has TWO paths and the REQUEST picks which: a \"token\" key in the body seals that credential directly (verify-before-store), and its absence begins the 3-legged OAuth flow — minting a single-use nonce plus an HMAC-signed state that binds this org to this provider, and answering with the provider's authorize URL for the caller to redirect to. Fail-closed order, unchanged: no principal → 403; unknown provider → 404; an AdminOnly connector without the caller's own-org admin bit → 403; not configured → 503; KMS not ready → 503 (the flow WILL need to seal a token, so refuse now rather than dead-end at the callback).
|
|
1523
|
+
# @param provider [String] Provider is the connector's registry id, from the :provider path segment.
|
|
1524
|
+
# @param connect_in [ConnectIn]
|
|
1525
|
+
# @param [Hash] opts the optional parameters
|
|
1526
|
+
# @return [Array<(ConnectOut, Integer, Hash)>] ConnectOut data, response status code and response headers
|
|
1527
|
+
def post_integrations_by_provider_connect_with_http_info(provider, connect_in, opts = {})
|
|
1528
|
+
if @api_client.config.debugging
|
|
1529
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_by_provider_connect ...'
|
|
1530
|
+
end
|
|
1531
|
+
# verify the required parameter 'provider' is set
|
|
1532
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
1533
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.post_integrations_by_provider_connect"
|
|
1534
|
+
end
|
|
1535
|
+
# verify the required parameter 'connect_in' is set
|
|
1536
|
+
if @api_client.config.client_side_validation && connect_in.nil?
|
|
1537
|
+
fail ArgumentError, "Missing the required parameter 'connect_in' when calling IntegrationsApi.post_integrations_by_provider_connect"
|
|
1538
|
+
end
|
|
1539
|
+
# resource path
|
|
1540
|
+
local_var_path = '/v1/integrations/{provider}/connect'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
1541
|
+
|
|
1542
|
+
# query parameters
|
|
1543
|
+
query_params = opts[:query_params] || {}
|
|
1544
|
+
|
|
1545
|
+
# header parameters
|
|
1546
|
+
header_params = opts[:header_params] || {}
|
|
1547
|
+
# HTTP header 'Accept' (if needed)
|
|
1548
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1549
|
+
# HTTP header 'Content-Type'
|
|
1550
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
1551
|
+
if !content_type.nil?
|
|
1552
|
+
header_params['Content-Type'] = content_type
|
|
1553
|
+
end
|
|
1554
|
+
|
|
1555
|
+
# form parameters
|
|
1556
|
+
form_params = opts[:form_params] || {}
|
|
1557
|
+
|
|
1558
|
+
# http body (model)
|
|
1559
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(connect_in)
|
|
1560
|
+
|
|
1561
|
+
# return_type
|
|
1562
|
+
return_type = opts[:debug_return_type] || 'ConnectOut'
|
|
1563
|
+
|
|
1564
|
+
# auth_names
|
|
1565
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1566
|
+
|
|
1567
|
+
new_options = opts.merge(
|
|
1568
|
+
:operation => :"IntegrationsApi.post_integrations_by_provider_connect",
|
|
1569
|
+
:header_params => header_params,
|
|
1570
|
+
:query_params => query_params,
|
|
1571
|
+
:form_params => form_params,
|
|
1572
|
+
:body => post_body,
|
|
1573
|
+
:auth_names => auth_names,
|
|
1574
|
+
:return_type => return_type
|
|
1575
|
+
)
|
|
1576
|
+
|
|
1577
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1578
|
+
if @api_client.config.debugging
|
|
1579
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_by_provider_connect\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1580
|
+
end
|
|
1581
|
+
return data, status_code, headers
|
|
1582
|
+
end
|
|
1583
|
+
|
|
1584
|
+
# Revokes (best-effort) and forgets an org's connection: it deletes every custodied KMS secret and the connection row.
|
|
1585
|
+
# Revokes (best-effort) and forgets an org's connection: it deletes every custodied KMS secret and the connection row. Idempotent — disconnecting a provider that was never connected still returns {disconnected:true}. Symmetric with connect: an AdminOnly connector needs the caller's own-org admin bit.
|
|
1586
|
+
# @param provider [String] Provider is the registry id of the connector — \"slack\", \"github\", \"cloudflare\". Unknown ids are 404, as are the user-plane (/v1/integrations/connectors) providers, which this surface never resolves.
|
|
1587
|
+
# @param [Hash] opts the optional parameters
|
|
1588
|
+
# @return [DisconnectOut]
|
|
1589
|
+
def post_integrations_by_provider_disconnect(provider, opts = {})
|
|
1590
|
+
data, _status_code, _headers = post_integrations_by_provider_disconnect_with_http_info(provider, opts)
|
|
1591
|
+
data
|
|
1592
|
+
end
|
|
1593
|
+
|
|
1594
|
+
# Revokes (best-effort) and forgets an org's connection: it deletes every custodied KMS secret and the connection row.
|
|
1595
|
+
# Revokes (best-effort) and forgets an org's connection: it deletes every custodied KMS secret and the connection row. Idempotent — disconnecting a provider that was never connected still returns {disconnected:true}. Symmetric with connect: an AdminOnly connector needs the caller's own-org admin bit.
|
|
1596
|
+
# @param provider [String] Provider is the registry id of the connector — \"slack\", \"github\", \"cloudflare\". Unknown ids are 404, as are the user-plane (/v1/integrations/connectors) providers, which this surface never resolves.
|
|
1597
|
+
# @param [Hash] opts the optional parameters
|
|
1598
|
+
# @return [Array<(DisconnectOut, Integer, Hash)>] DisconnectOut data, response status code and response headers
|
|
1599
|
+
def post_integrations_by_provider_disconnect_with_http_info(provider, opts = {})
|
|
1600
|
+
if @api_client.config.debugging
|
|
1601
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_by_provider_disconnect ...'
|
|
1602
|
+
end
|
|
1603
|
+
# verify the required parameter 'provider' is set
|
|
1604
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
1605
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.post_integrations_by_provider_disconnect"
|
|
1606
|
+
end
|
|
1607
|
+
# resource path
|
|
1608
|
+
local_var_path = '/v1/integrations/{provider}/disconnect'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
1609
|
+
|
|
1610
|
+
# query parameters
|
|
1611
|
+
query_params = opts[:query_params] || {}
|
|
1612
|
+
|
|
1613
|
+
# header parameters
|
|
1614
|
+
header_params = opts[:header_params] || {}
|
|
1615
|
+
# HTTP header 'Accept' (if needed)
|
|
1616
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1617
|
+
|
|
1618
|
+
# form parameters
|
|
1619
|
+
form_params = opts[:form_params] || {}
|
|
1620
|
+
|
|
1621
|
+
# http body (model)
|
|
1622
|
+
post_body = opts[:debug_body]
|
|
1623
|
+
|
|
1624
|
+
# return_type
|
|
1625
|
+
return_type = opts[:debug_return_type] || 'DisconnectOut'
|
|
1626
|
+
|
|
1627
|
+
# auth_names
|
|
1628
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1629
|
+
|
|
1630
|
+
new_options = opts.merge(
|
|
1631
|
+
:operation => :"IntegrationsApi.post_integrations_by_provider_disconnect",
|
|
1632
|
+
:header_params => header_params,
|
|
1633
|
+
:query_params => query_params,
|
|
1634
|
+
:form_params => form_params,
|
|
1635
|
+
:body => post_body,
|
|
1636
|
+
:auth_names => auth_names,
|
|
1637
|
+
:return_type => return_type
|
|
1638
|
+
)
|
|
1639
|
+
|
|
1640
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1641
|
+
if @api_client.config.debugging
|
|
1642
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_by_provider_disconnect\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1643
|
+
end
|
|
1644
|
+
return data, status_code, headers
|
|
1645
|
+
end
|
|
1646
|
+
|
|
1647
|
+
# Re-checks a CONNECTED apikey connector's stored credential against the provider, live (`hanzo connector verify`).
|
|
1648
|
+
# Re-checks a CONNECTED apikey connector's stored credential against the provider, live (`hanzo connector verify`). Org-scoped (any member may check status); the credential is read from KMS, verified, and NEVER returned or logged. A verification failure is reported as {active:false}, not an error — the console/ CLI renders it. Only apikey providers support verify (OAuth tokens are checked at use, not re-verified here).
|
|
1649
|
+
# @param provider [String] Provider is the registry id of the connector — \"slack\", \"github\", \"cloudflare\". Unknown ids are 404, as are the user-plane (/v1/integrations/connectors) providers, which this surface never resolves.
|
|
1650
|
+
# @param [Hash] opts the optional parameters
|
|
1651
|
+
# @return [VerifyOut]
|
|
1652
|
+
def post_integrations_by_provider_verify(provider, opts = {})
|
|
1653
|
+
data, _status_code, _headers = post_integrations_by_provider_verify_with_http_info(provider, opts)
|
|
1654
|
+
data
|
|
1655
|
+
end
|
|
1656
|
+
|
|
1657
|
+
# Re-checks a CONNECTED apikey connector's stored credential against the provider, live (`hanzo connector verify`).
|
|
1658
|
+
# Re-checks a CONNECTED apikey connector's stored credential against the provider, live (`hanzo connector verify`). Org-scoped (any member may check status); the credential is read from KMS, verified, and NEVER returned or logged. A verification failure is reported as {active:false}, not an error — the console/ CLI renders it. Only apikey providers support verify (OAuth tokens are checked at use, not re-verified here).
|
|
1659
|
+
# @param provider [String] Provider is the registry id of the connector — \"slack\", \"github\", \"cloudflare\". Unknown ids are 404, as are the user-plane (/v1/integrations/connectors) providers, which this surface never resolves.
|
|
1660
|
+
# @param [Hash] opts the optional parameters
|
|
1661
|
+
# @return [Array<(VerifyOut, Integer, Hash)>] VerifyOut data, response status code and response headers
|
|
1662
|
+
def post_integrations_by_provider_verify_with_http_info(provider, opts = {})
|
|
1663
|
+
if @api_client.config.debugging
|
|
1664
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_by_provider_verify ...'
|
|
1665
|
+
end
|
|
1666
|
+
# verify the required parameter 'provider' is set
|
|
1667
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
1668
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.post_integrations_by_provider_verify"
|
|
1669
|
+
end
|
|
1670
|
+
# resource path
|
|
1671
|
+
local_var_path = '/v1/integrations/{provider}/verify'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
1672
|
+
|
|
1673
|
+
# query parameters
|
|
1674
|
+
query_params = opts[:query_params] || {}
|
|
1675
|
+
|
|
1676
|
+
# header parameters
|
|
1677
|
+
header_params = opts[:header_params] || {}
|
|
1678
|
+
# HTTP header 'Accept' (if needed)
|
|
1679
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1680
|
+
|
|
1681
|
+
# form parameters
|
|
1682
|
+
form_params = opts[:form_params] || {}
|
|
1683
|
+
|
|
1684
|
+
# http body (model)
|
|
1685
|
+
post_body = opts[:debug_body]
|
|
1686
|
+
|
|
1687
|
+
# return_type
|
|
1688
|
+
return_type = opts[:debug_return_type] || 'VerifyOut'
|
|
1689
|
+
|
|
1690
|
+
# auth_names
|
|
1691
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1692
|
+
|
|
1693
|
+
new_options = opts.merge(
|
|
1694
|
+
:operation => :"IntegrationsApi.post_integrations_by_provider_verify",
|
|
1695
|
+
:header_params => header_params,
|
|
1696
|
+
:query_params => query_params,
|
|
1697
|
+
:form_params => form_params,
|
|
1698
|
+
:body => post_body,
|
|
1699
|
+
:auth_names => auth_names,
|
|
1700
|
+
:return_type => return_type
|
|
1701
|
+
)
|
|
1702
|
+
|
|
1703
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1704
|
+
if @api_client.config.debugging
|
|
1705
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_by_provider_verify\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1706
|
+
end
|
|
1707
|
+
return data, status_code, headers
|
|
1708
|
+
end
|
|
1709
|
+
|
|
1710
|
+
# Forces a token rotation for a connected connector, ahead of the automatic rotation a token read would do inside the expiry window.
|
|
1711
|
+
# Forces a token rotation for a connected connector, ahead of the automatic rotation a token read would do inside the expiry window. Only providers that declare a Refresh support it.
|
|
1712
|
+
# @param id [String] ID is the connector id, provider + \":\" + label (\"openai:default\") — the auth-profile-id shape. Another user's id is simply no row, so 404.
|
|
1713
|
+
# @param [Hash] opts the optional parameters
|
|
1714
|
+
# @return [RefreshOut]
|
|
1715
|
+
def post_integrations_connectors_by_id_refresh(id, opts = {})
|
|
1716
|
+
data, _status_code, _headers = post_integrations_connectors_by_id_refresh_with_http_info(id, opts)
|
|
1717
|
+
data
|
|
1718
|
+
end
|
|
1719
|
+
|
|
1720
|
+
# Forces a token rotation for a connected connector, ahead of the automatic rotation a token read would do inside the expiry window.
|
|
1721
|
+
# Forces a token rotation for a connected connector, ahead of the automatic rotation a token read would do inside the expiry window. Only providers that declare a Refresh support it.
|
|
1722
|
+
# @param id [String] ID is the connector id, provider + \":\" + label (\"openai:default\") — the auth-profile-id shape. Another user's id is simply no row, so 404.
|
|
1723
|
+
# @param [Hash] opts the optional parameters
|
|
1724
|
+
# @return [Array<(RefreshOut, Integer, Hash)>] RefreshOut data, response status code and response headers
|
|
1725
|
+
def post_integrations_connectors_by_id_refresh_with_http_info(id, opts = {})
|
|
1726
|
+
if @api_client.config.debugging
|
|
1727
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_connectors_by_id_refresh ...'
|
|
1728
|
+
end
|
|
1729
|
+
# verify the required parameter 'id' is set
|
|
1730
|
+
if @api_client.config.client_side_validation && id.nil?
|
|
1731
|
+
fail ArgumentError, "Missing the required parameter 'id' when calling IntegrationsApi.post_integrations_connectors_by_id_refresh"
|
|
1732
|
+
end
|
|
1733
|
+
# resource path
|
|
1734
|
+
local_var_path = '/v1/integrations/connectors/{id}/refresh'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
|
|
1735
|
+
|
|
1736
|
+
# query parameters
|
|
1737
|
+
query_params = opts[:query_params] || {}
|
|
1738
|
+
|
|
1739
|
+
# header parameters
|
|
1740
|
+
header_params = opts[:header_params] || {}
|
|
1741
|
+
# HTTP header 'Accept' (if needed)
|
|
1742
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1743
|
+
|
|
1744
|
+
# form parameters
|
|
1745
|
+
form_params = opts[:form_params] || {}
|
|
1746
|
+
|
|
1747
|
+
# http body (model)
|
|
1748
|
+
post_body = opts[:debug_body]
|
|
1749
|
+
|
|
1750
|
+
# return_type
|
|
1751
|
+
return_type = opts[:debug_return_type] || 'RefreshOut'
|
|
1752
|
+
|
|
1753
|
+
# auth_names
|
|
1754
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1755
|
+
|
|
1756
|
+
new_options = opts.merge(
|
|
1757
|
+
:operation => :"IntegrationsApi.post_integrations_connectors_by_id_refresh",
|
|
1758
|
+
:header_params => header_params,
|
|
1759
|
+
:query_params => query_params,
|
|
1760
|
+
:form_params => form_params,
|
|
1761
|
+
:body => post_body,
|
|
1762
|
+
:auth_names => auth_names,
|
|
1763
|
+
:return_type => return_type
|
|
1764
|
+
)
|
|
1765
|
+
|
|
1766
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1767
|
+
if @api_client.config.debugging
|
|
1768
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_connectors_by_id_refresh\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1769
|
+
end
|
|
1770
|
+
return data, status_code, headers
|
|
1771
|
+
end
|
|
1772
|
+
|
|
1773
|
+
# Is the direct intake path: a customer-held token/setup-token (Verify) or an externally obtained OAuth bundle from the CLI's local PKCE (Adopt).
|
|
1774
|
+
# Is the direct intake path: a customer-held token/setup-token (Verify) or an externally obtained OAuth bundle from the CLI's local PKCE (Adopt). ALWAYS verify-before-store: a bad credential is refused and NOTHING is persisted (connectByCredential's fail-closed order).
|
|
1775
|
+
# @param provider [String] Provider is the user-scoped provider's registry id, from the path.
|
|
1776
|
+
# @param credential_in [CredentialIn]
|
|
1777
|
+
# @param [Hash] opts the optional parameters
|
|
1778
|
+
# @return [CredentialOut]
|
|
1779
|
+
def post_integrations_connectors_by_provider_credential(provider, credential_in, opts = {})
|
|
1780
|
+
data, _status_code, _headers = post_integrations_connectors_by_provider_credential_with_http_info(provider, credential_in, opts)
|
|
1781
|
+
data
|
|
1782
|
+
end
|
|
1783
|
+
|
|
1784
|
+
# Is the direct intake path: a customer-held token/setup-token (Verify) or an externally obtained OAuth bundle from the CLI's local PKCE (Adopt).
|
|
1785
|
+
# Is the direct intake path: a customer-held token/setup-token (Verify) or an externally obtained OAuth bundle from the CLI's local PKCE (Adopt). ALWAYS verify-before-store: a bad credential is refused and NOTHING is persisted (connectByCredential's fail-closed order).
|
|
1786
|
+
# @param provider [String] Provider is the user-scoped provider's registry id, from the path.
|
|
1787
|
+
# @param credential_in [CredentialIn]
|
|
1788
|
+
# @param [Hash] opts the optional parameters
|
|
1789
|
+
# @return [Array<(CredentialOut, Integer, Hash)>] CredentialOut data, response status code and response headers
|
|
1790
|
+
def post_integrations_connectors_by_provider_credential_with_http_info(provider, credential_in, opts = {})
|
|
1791
|
+
if @api_client.config.debugging
|
|
1792
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_connectors_by_provider_credential ...'
|
|
1793
|
+
end
|
|
1794
|
+
# verify the required parameter 'provider' is set
|
|
1795
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
1796
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.post_integrations_connectors_by_provider_credential"
|
|
1797
|
+
end
|
|
1798
|
+
# verify the required parameter 'credential_in' is set
|
|
1799
|
+
if @api_client.config.client_side_validation && credential_in.nil?
|
|
1800
|
+
fail ArgumentError, "Missing the required parameter 'credential_in' when calling IntegrationsApi.post_integrations_connectors_by_provider_credential"
|
|
1801
|
+
end
|
|
1802
|
+
# resource path
|
|
1803
|
+
local_var_path = '/v1/integrations/connectors/{provider}/credential'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
1804
|
+
|
|
1805
|
+
# query parameters
|
|
1806
|
+
query_params = opts[:query_params] || {}
|
|
1807
|
+
|
|
1808
|
+
# header parameters
|
|
1809
|
+
header_params = opts[:header_params] || {}
|
|
1810
|
+
# HTTP header 'Accept' (if needed)
|
|
1811
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1812
|
+
# HTTP header 'Content-Type'
|
|
1813
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
1814
|
+
if !content_type.nil?
|
|
1815
|
+
header_params['Content-Type'] = content_type
|
|
1816
|
+
end
|
|
1817
|
+
|
|
1818
|
+
# form parameters
|
|
1819
|
+
form_params = opts[:form_params] || {}
|
|
1820
|
+
|
|
1821
|
+
# http body (model)
|
|
1822
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(credential_in)
|
|
1823
|
+
|
|
1824
|
+
# return_type
|
|
1825
|
+
return_type = opts[:debug_return_type] || 'CredentialOut'
|
|
1826
|
+
|
|
1827
|
+
# auth_names
|
|
1828
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1829
|
+
|
|
1830
|
+
new_options = opts.merge(
|
|
1831
|
+
:operation => :"IntegrationsApi.post_integrations_connectors_by_provider_credential",
|
|
1832
|
+
:header_params => header_params,
|
|
1833
|
+
:query_params => query_params,
|
|
1834
|
+
:form_params => form_params,
|
|
1835
|
+
:body => post_body,
|
|
1836
|
+
:auth_names => auth_names,
|
|
1837
|
+
:return_type => return_type
|
|
1838
|
+
)
|
|
1839
|
+
|
|
1840
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1841
|
+
if @api_client.config.debugging
|
|
1842
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_connectors_by_provider_credential\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1843
|
+
end
|
|
1844
|
+
return data, status_code, headers
|
|
1845
|
+
end
|
|
1846
|
+
|
|
1847
|
+
# Begins a device sign-in and returns the code to show the user plus how to poll for completion.
|
|
1848
|
+
# Begins a device sign-in and returns the code to show the user plus how to poll for completion. KMS readiness is checked NOW rather than dead-ending the user at poll-done (connect() parity), and the per-provider connector cap is checked before the provider is called. The provider's device code is persisted only in the encrypted grants table and is NEVER returned.
|
|
1849
|
+
# @param provider [String] Provider is the user-scoped provider's registry id, from the path.
|
|
1850
|
+
# @param device_start_in [DeviceStartIn]
|
|
1851
|
+
# @param [Hash] opts the optional parameters
|
|
1852
|
+
# @return [DeviceStartOut]
|
|
1853
|
+
def post_integrations_connectors_by_provider_device(provider, device_start_in, opts = {})
|
|
1854
|
+
data, _status_code, _headers = post_integrations_connectors_by_provider_device_with_http_info(provider, device_start_in, opts)
|
|
1855
|
+
data
|
|
1856
|
+
end
|
|
1857
|
+
|
|
1858
|
+
# Begins a device sign-in and returns the code to show the user plus how to poll for completion.
|
|
1859
|
+
# Begins a device sign-in and returns the code to show the user plus how to poll for completion. KMS readiness is checked NOW rather than dead-ending the user at poll-done (connect() parity), and the per-provider connector cap is checked before the provider is called. The provider's device code is persisted only in the encrypted grants table and is NEVER returned.
|
|
1860
|
+
# @param provider [String] Provider is the user-scoped provider's registry id, from the path.
|
|
1861
|
+
# @param device_start_in [DeviceStartIn]
|
|
1862
|
+
# @param [Hash] opts the optional parameters
|
|
1863
|
+
# @return [Array<(DeviceStartOut, Integer, Hash)>] DeviceStartOut data, response status code and response headers
|
|
1864
|
+
def post_integrations_connectors_by_provider_device_with_http_info(provider, device_start_in, opts = {})
|
|
1865
|
+
if @api_client.config.debugging
|
|
1866
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_connectors_by_provider_device ...'
|
|
1867
|
+
end
|
|
1868
|
+
# verify the required parameter 'provider' is set
|
|
1869
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
1870
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.post_integrations_connectors_by_provider_device"
|
|
1871
|
+
end
|
|
1872
|
+
# verify the required parameter 'device_start_in' is set
|
|
1873
|
+
if @api_client.config.client_side_validation && device_start_in.nil?
|
|
1874
|
+
fail ArgumentError, "Missing the required parameter 'device_start_in' when calling IntegrationsApi.post_integrations_connectors_by_provider_device"
|
|
1875
|
+
end
|
|
1876
|
+
# resource path
|
|
1877
|
+
local_var_path = '/v1/integrations/connectors/{provider}/device'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s))
|
|
1878
|
+
|
|
1879
|
+
# query parameters
|
|
1880
|
+
query_params = opts[:query_params] || {}
|
|
1881
|
+
|
|
1882
|
+
# header parameters
|
|
1883
|
+
header_params = opts[:header_params] || {}
|
|
1884
|
+
# HTTP header 'Accept' (if needed)
|
|
1885
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1886
|
+
# HTTP header 'Content-Type'
|
|
1887
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
1888
|
+
if !content_type.nil?
|
|
1889
|
+
header_params['Content-Type'] = content_type
|
|
1890
|
+
end
|
|
1891
|
+
|
|
1892
|
+
# form parameters
|
|
1893
|
+
form_params = opts[:form_params] || {}
|
|
1894
|
+
|
|
1895
|
+
# http body (model)
|
|
1896
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(device_start_in)
|
|
1897
|
+
|
|
1898
|
+
# return_type
|
|
1899
|
+
return_type = opts[:debug_return_type] || 'DeviceStartOut'
|
|
1900
|
+
|
|
1901
|
+
# auth_names
|
|
1902
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1903
|
+
|
|
1904
|
+
new_options = opts.merge(
|
|
1905
|
+
:operation => :"IntegrationsApi.post_integrations_connectors_by_provider_device",
|
|
1906
|
+
:header_params => header_params,
|
|
1907
|
+
:query_params => query_params,
|
|
1908
|
+
:form_params => form_params,
|
|
1909
|
+
:body => post_body,
|
|
1910
|
+
:auth_names => auth_names,
|
|
1911
|
+
:return_type => return_type
|
|
1912
|
+
)
|
|
1913
|
+
|
|
1914
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1915
|
+
if @api_client.config.debugging
|
|
1916
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_connectors_by_provider_device\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1917
|
+
end
|
|
1918
|
+
return data, status_code, headers
|
|
1919
|
+
end
|
|
1920
|
+
|
|
1921
|
+
# Advances a device sign-in.
|
|
1922
|
+
# Advances a device sign-in. Terminal outcomes are DATA, not errors (verifyConn {active:false} discipline) — the status set is closed: pending|connected|denied|expired. pollSlow collapses to \"pending\" on the wire; the raised cadence rides interval.
|
|
1923
|
+
# @param provider [String] Provider is the user-scoped provider's registry id, from the path.
|
|
1924
|
+
# @param flow [String] Flow is the id deviceStartOut returned. Expired or another user's flow is indistinguishable from an unknown one: 404.
|
|
1925
|
+
# @param [Hash] opts the optional parameters
|
|
1926
|
+
# @return [DevicePollOut]
|
|
1927
|
+
def post_integrations_connectors_by_provider_device_by_flow_poll(provider, flow, opts = {})
|
|
1928
|
+
data, _status_code, _headers = post_integrations_connectors_by_provider_device_by_flow_poll_with_http_info(provider, flow, opts)
|
|
1929
|
+
data
|
|
1930
|
+
end
|
|
1931
|
+
|
|
1932
|
+
# Advances a device sign-in.
|
|
1933
|
+
# Advances a device sign-in. Terminal outcomes are DATA, not errors (verifyConn {active:false} discipline) — the status set is closed: pending|connected|denied|expired. pollSlow collapses to \"pending\" on the wire; the raised cadence rides interval.
|
|
1934
|
+
# @param provider [String] Provider is the user-scoped provider's registry id, from the path.
|
|
1935
|
+
# @param flow [String] Flow is the id deviceStartOut returned. Expired or another user's flow is indistinguishable from an unknown one: 404.
|
|
1936
|
+
# @param [Hash] opts the optional parameters
|
|
1937
|
+
# @return [Array<(DevicePollOut, Integer, Hash)>] DevicePollOut data, response status code and response headers
|
|
1938
|
+
def post_integrations_connectors_by_provider_device_by_flow_poll_with_http_info(provider, flow, opts = {})
|
|
1939
|
+
if @api_client.config.debugging
|
|
1940
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_connectors_by_provider_device_by_flow_poll ...'
|
|
1941
|
+
end
|
|
1942
|
+
# verify the required parameter 'provider' is set
|
|
1943
|
+
if @api_client.config.client_side_validation && provider.nil?
|
|
1944
|
+
fail ArgumentError, "Missing the required parameter 'provider' when calling IntegrationsApi.post_integrations_connectors_by_provider_device_by_flow_poll"
|
|
1945
|
+
end
|
|
1946
|
+
# verify the required parameter 'flow' is set
|
|
1947
|
+
if @api_client.config.client_side_validation && flow.nil?
|
|
1948
|
+
fail ArgumentError, "Missing the required parameter 'flow' when calling IntegrationsApi.post_integrations_connectors_by_provider_device_by_flow_poll"
|
|
1949
|
+
end
|
|
1950
|
+
# resource path
|
|
1951
|
+
local_var_path = '/v1/integrations/connectors/{provider}/device/{flow}/poll'.sub('{' + 'provider' + '}', CGI.escape(provider.to_s)).sub('{' + 'flow' + '}', CGI.escape(flow.to_s))
|
|
1952
|
+
|
|
1953
|
+
# query parameters
|
|
1954
|
+
query_params = opts[:query_params] || {}
|
|
1955
|
+
|
|
1956
|
+
# header parameters
|
|
1957
|
+
header_params = opts[:header_params] || {}
|
|
1958
|
+
# HTTP header 'Accept' (if needed)
|
|
1959
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
1960
|
+
|
|
1961
|
+
# form parameters
|
|
1962
|
+
form_params = opts[:form_params] || {}
|
|
1963
|
+
|
|
1964
|
+
# http body (model)
|
|
1965
|
+
post_body = opts[:debug_body]
|
|
1966
|
+
|
|
1967
|
+
# return_type
|
|
1968
|
+
return_type = opts[:debug_return_type] || 'DevicePollOut'
|
|
1969
|
+
|
|
1970
|
+
# auth_names
|
|
1971
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
1972
|
+
|
|
1973
|
+
new_options = opts.merge(
|
|
1974
|
+
:operation => :"IntegrationsApi.post_integrations_connectors_by_provider_device_by_flow_poll",
|
|
1975
|
+
:header_params => header_params,
|
|
1976
|
+
:query_params => query_params,
|
|
1977
|
+
:form_params => form_params,
|
|
1978
|
+
:body => post_body,
|
|
1979
|
+
:auth_names => auth_names,
|
|
1980
|
+
:return_type => return_type
|
|
1981
|
+
)
|
|
1982
|
+
|
|
1983
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
1984
|
+
if @api_client.config.debugging
|
|
1985
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_connectors_by_provider_device_by_flow_poll\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
1986
|
+
end
|
|
1987
|
+
return data, status_code, headers
|
|
1988
|
+
end
|
|
1989
|
+
|
|
1990
|
+
# Discord interactions endpoint
|
|
1991
|
+
# The Interactions Endpoint URL for the Discord app. It answers Discord's PING with a PONG, and handles the `/hanzo` slash command by acknowledging with a deferred ephemeral reply and editing that reply with the answer once the agent has run. Any other interaction is acknowledged and ignored. Requests are verified by ED25519 SIGNATURE over the timestamp and body against the app's public key — not by HMAC, unlike the Slack webhooks. Interactions work over plain HTTP, so no gateway connection and no message-content intent is involved. Discord does not retry, so this is the one channel where being at capacity is shown to the user as an ephemeral ask-to-run-it-again rather than answered as a retriable failure — nothing is recorded either way, so the next attempt is clean. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400.
|
|
1992
|
+
# @param [Hash] opts the optional parameters
|
|
1993
|
+
# @return [nil]
|
|
1994
|
+
def post_integrations_discord_interactions(opts = {})
|
|
1995
|
+
post_integrations_discord_interactions_with_http_info(opts)
|
|
1996
|
+
nil
|
|
1997
|
+
end
|
|
1998
|
+
|
|
1999
|
+
# Discord interactions endpoint
|
|
2000
|
+
# The Interactions Endpoint URL for the Discord app. It answers Discord's PING with a PONG, and handles the `/hanzo` slash command by acknowledging with a deferred ephemeral reply and editing that reply with the answer once the agent has run. Any other interaction is acknowledged and ignored. Requests are verified by ED25519 SIGNATURE over the timestamp and body against the app's public key — not by HMAC, unlike the Slack webhooks. Interactions work over plain HTTP, so no gateway connection and no message-content intent is involved. Discord does not retry, so this is the one channel where being at capacity is shown to the user as an ephemeral ask-to-run-it-again rather than answered as a retriable failure — nothing is recorded either way, so the next attempt is clean. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400.
|
|
2001
|
+
# @param [Hash] opts the optional parameters
|
|
2002
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2003
|
+
def post_integrations_discord_interactions_with_http_info(opts = {})
|
|
2004
|
+
if @api_client.config.debugging
|
|
2005
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_discord_interactions ...'
|
|
2006
|
+
end
|
|
2007
|
+
# resource path
|
|
2008
|
+
local_var_path = '/v1/integrations/discord/interactions'
|
|
2009
|
+
|
|
2010
|
+
# query parameters
|
|
2011
|
+
query_params = opts[:query_params] || {}
|
|
2012
|
+
|
|
2013
|
+
# header parameters
|
|
2014
|
+
header_params = opts[:header_params] || {}
|
|
2015
|
+
|
|
2016
|
+
# form parameters
|
|
2017
|
+
form_params = opts[:form_params] || {}
|
|
2018
|
+
|
|
2019
|
+
# http body (model)
|
|
2020
|
+
post_body = opts[:debug_body]
|
|
2021
|
+
|
|
2022
|
+
# return_type
|
|
2023
|
+
return_type = opts[:debug_return_type]
|
|
2024
|
+
|
|
2025
|
+
# auth_names
|
|
2026
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2027
|
+
|
|
2028
|
+
new_options = opts.merge(
|
|
2029
|
+
:operation => :"IntegrationsApi.post_integrations_discord_interactions",
|
|
2030
|
+
:header_params => header_params,
|
|
2031
|
+
:query_params => query_params,
|
|
2032
|
+
:form_params => form_params,
|
|
2033
|
+
:body => post_body,
|
|
2034
|
+
:auth_names => auth_names,
|
|
2035
|
+
:return_type => return_type
|
|
2036
|
+
)
|
|
2037
|
+
|
|
2038
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2039
|
+
if @api_client.config.debugging
|
|
2040
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_discord_interactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2041
|
+
end
|
|
2042
|
+
return data, status_code, headers
|
|
2043
|
+
end
|
|
2044
|
+
|
|
2045
|
+
# Binds installations the App ALREADY holds to the org the caller is acting in — the reconciliation for a grant that happened outside our connect flow.
|
|
2046
|
+
# Binds installations the App ALREADY holds to the org the caller is acting in — the reconciliation for a grant that happened outside our connect flow. An installation IS the grant: GitHub recorded the consent when the App was installed, and our connection row is bookkeeping that never got written because nobody came through our callback. This writes that row from the App's own view, so 23 accounts granted straight from GitHub stop reading as nothing. The org is taken from the VALIDATED PRINCIPAL and never from the body, because it is the one part GitHub cannot tell us. An installation carries an account login, a type and a repository selection — nothing that names a Hanzo org. So the binding cannot be DERIVED, only asserted, and the only unforgeable assertion available is the org the caller is already acting in. Inferring one from the account name would be a guess the store cannot catch: its key is (org,provider,owner), so a wrong org is a valid row, and a valid row is a mirror pointed at the wrong tenant. SUPER ADMIN only, for that same reason. A tenant's proof that an account is theirs is GitHub's own consent screen — the connect flow — and without it any org could claim any account the App holds. Platform sudo is already the scope that reads the whole install list, so it is the scope that may bind from it; giving a tenant this verb would hand it every other tenant's repositories. Idempotent: the row is keyed (org,provider,owner) and connected_at survives an upsert, so claiming twice rebinds the same account to the same org and reports it under `already`. Re-claiming also REFRESHES the installation id, so an account reinstalled on GitHub — new id, same login — self-heals instead of minting tokens against a dead installation. Claiming an account another org holds ADDS this org's row and leaves theirs standing, so no org loses an integration it is using.
|
|
2047
|
+
# @param github_claim_in [GithubClaimIn]
|
|
2048
|
+
# @param [Hash] opts the optional parameters
|
|
2049
|
+
# @return [GithubClaimOut]
|
|
2050
|
+
def post_integrations_github_claim(github_claim_in, opts = {})
|
|
2051
|
+
data, _status_code, _headers = post_integrations_github_claim_with_http_info(github_claim_in, opts)
|
|
2052
|
+
data
|
|
2053
|
+
end
|
|
2054
|
+
|
|
2055
|
+
# Binds installations the App ALREADY holds to the org the caller is acting in — the reconciliation for a grant that happened outside our connect flow.
|
|
2056
|
+
# Binds installations the App ALREADY holds to the org the caller is acting in — the reconciliation for a grant that happened outside our connect flow. An installation IS the grant: GitHub recorded the consent when the App was installed, and our connection row is bookkeeping that never got written because nobody came through our callback. This writes that row from the App's own view, so 23 accounts granted straight from GitHub stop reading as nothing. The org is taken from the VALIDATED PRINCIPAL and never from the body, because it is the one part GitHub cannot tell us. An installation carries an account login, a type and a repository selection — nothing that names a Hanzo org. So the binding cannot be DERIVED, only asserted, and the only unforgeable assertion available is the org the caller is already acting in. Inferring one from the account name would be a guess the store cannot catch: its key is (org,provider,owner), so a wrong org is a valid row, and a valid row is a mirror pointed at the wrong tenant. SUPER ADMIN only, for that same reason. A tenant's proof that an account is theirs is GitHub's own consent screen — the connect flow — and without it any org could claim any account the App holds. Platform sudo is already the scope that reads the whole install list, so it is the scope that may bind from it; giving a tenant this verb would hand it every other tenant's repositories. Idempotent: the row is keyed (org,provider,owner) and connected_at survives an upsert, so claiming twice rebinds the same account to the same org and reports it under `already`. Re-claiming also REFRESHES the installation id, so an account reinstalled on GitHub — new id, same login — self-heals instead of minting tokens against a dead installation. Claiming an account another org holds ADDS this org's row and leaves theirs standing, so no org loses an integration it is using.
|
|
2057
|
+
# @param github_claim_in [GithubClaimIn]
|
|
2058
|
+
# @param [Hash] opts the optional parameters
|
|
2059
|
+
# @return [Array<(GithubClaimOut, Integer, Hash)>] GithubClaimOut data, response status code and response headers
|
|
2060
|
+
def post_integrations_github_claim_with_http_info(github_claim_in, opts = {})
|
|
2061
|
+
if @api_client.config.debugging
|
|
2062
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_claim ...'
|
|
2063
|
+
end
|
|
2064
|
+
# verify the required parameter 'github_claim_in' is set
|
|
2065
|
+
if @api_client.config.client_side_validation && github_claim_in.nil?
|
|
2066
|
+
fail ArgumentError, "Missing the required parameter 'github_claim_in' when calling IntegrationsApi.post_integrations_github_claim"
|
|
2067
|
+
end
|
|
2068
|
+
# resource path
|
|
2069
|
+
local_var_path = '/v1/integrations/github/claim'
|
|
2070
|
+
|
|
2071
|
+
# query parameters
|
|
2072
|
+
query_params = opts[:query_params] || {}
|
|
2073
|
+
|
|
2074
|
+
# header parameters
|
|
2075
|
+
header_params = opts[:header_params] || {}
|
|
2076
|
+
# HTTP header 'Accept' (if needed)
|
|
2077
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2078
|
+
# HTTP header 'Content-Type'
|
|
2079
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2080
|
+
if !content_type.nil?
|
|
2081
|
+
header_params['Content-Type'] = content_type
|
|
2082
|
+
end
|
|
2083
|
+
|
|
2084
|
+
# form parameters
|
|
2085
|
+
form_params = opts[:form_params] || {}
|
|
2086
|
+
|
|
2087
|
+
# http body (model)
|
|
2088
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_claim_in)
|
|
2089
|
+
|
|
2090
|
+
# return_type
|
|
2091
|
+
return_type = opts[:debug_return_type] || 'GithubClaimOut'
|
|
2092
|
+
|
|
2093
|
+
# auth_names
|
|
2094
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2095
|
+
|
|
2096
|
+
new_options = opts.merge(
|
|
2097
|
+
:operation => :"IntegrationsApi.post_integrations_github_claim",
|
|
2098
|
+
:header_params => header_params,
|
|
2099
|
+
:query_params => query_params,
|
|
2100
|
+
:form_params => form_params,
|
|
2101
|
+
:body => post_body,
|
|
2102
|
+
:auth_names => auth_names,
|
|
2103
|
+
:return_type => return_type
|
|
2104
|
+
)
|
|
2105
|
+
|
|
2106
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2107
|
+
if @api_client.config.debugging
|
|
2108
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_claim\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2109
|
+
end
|
|
2110
|
+
return data, status_code, headers
|
|
2111
|
+
end
|
|
2112
|
+
|
|
2113
|
+
# Forks a granted repository.
|
|
2114
|
+
# Forks a granted repository. GitHub's fork is ASYNCHRONOUS: it answers 202 with the target repo and populates it in the background, and it answers the same 202 when the fork already exists. So this reports what GitHub said rather than waiting — a call that blocked until the clone finished would time out on a large repository and tell the caller nothing it does not already know.
|
|
2115
|
+
# @param github_fork_req [GithubForkReq]
|
|
2116
|
+
# @param [Hash] opts the optional parameters
|
|
2117
|
+
# @return [GithubForkOut]
|
|
2118
|
+
def post_integrations_github_fork(github_fork_req, opts = {})
|
|
2119
|
+
data, _status_code, _headers = post_integrations_github_fork_with_http_info(github_fork_req, opts)
|
|
2120
|
+
data
|
|
2121
|
+
end
|
|
2122
|
+
|
|
2123
|
+
# Forks a granted repository.
|
|
2124
|
+
# Forks a granted repository. GitHub's fork is ASYNCHRONOUS: it answers 202 with the target repo and populates it in the background, and it answers the same 202 when the fork already exists. So this reports what GitHub said rather than waiting — a call that blocked until the clone finished would time out on a large repository and tell the caller nothing it does not already know.
|
|
2125
|
+
# @param github_fork_req [GithubForkReq]
|
|
2126
|
+
# @param [Hash] opts the optional parameters
|
|
2127
|
+
# @return [Array<(GithubForkOut, Integer, Hash)>] GithubForkOut data, response status code and response headers
|
|
2128
|
+
def post_integrations_github_fork_with_http_info(github_fork_req, opts = {})
|
|
2129
|
+
if @api_client.config.debugging
|
|
2130
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_fork ...'
|
|
2131
|
+
end
|
|
2132
|
+
# verify the required parameter 'github_fork_req' is set
|
|
2133
|
+
if @api_client.config.client_side_validation && github_fork_req.nil?
|
|
2134
|
+
fail ArgumentError, "Missing the required parameter 'github_fork_req' when calling IntegrationsApi.post_integrations_github_fork"
|
|
2135
|
+
end
|
|
2136
|
+
# resource path
|
|
2137
|
+
local_var_path = '/v1/integrations/github/fork'
|
|
2138
|
+
|
|
2139
|
+
# query parameters
|
|
2140
|
+
query_params = opts[:query_params] || {}
|
|
2141
|
+
|
|
2142
|
+
# header parameters
|
|
2143
|
+
header_params = opts[:header_params] || {}
|
|
2144
|
+
# HTTP header 'Accept' (if needed)
|
|
2145
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2146
|
+
# HTTP header 'Content-Type'
|
|
2147
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2148
|
+
if !content_type.nil?
|
|
2149
|
+
header_params['Content-Type'] = content_type
|
|
2150
|
+
end
|
|
2151
|
+
|
|
2152
|
+
# form parameters
|
|
2153
|
+
form_params = opts[:form_params] || {}
|
|
2154
|
+
|
|
2155
|
+
# http body (model)
|
|
2156
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_fork_req)
|
|
2157
|
+
|
|
2158
|
+
# return_type
|
|
2159
|
+
return_type = opts[:debug_return_type] || 'GithubForkOut'
|
|
2160
|
+
|
|
2161
|
+
# auth_names
|
|
2162
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2163
|
+
|
|
2164
|
+
new_options = opts.merge(
|
|
2165
|
+
:operation => :"IntegrationsApi.post_integrations_github_fork",
|
|
2166
|
+
:header_params => header_params,
|
|
2167
|
+
:query_params => query_params,
|
|
2168
|
+
:form_params => form_params,
|
|
2169
|
+
:body => post_body,
|
|
2170
|
+
:auth_names => auth_names,
|
|
2171
|
+
:return_type => return_type
|
|
2172
|
+
)
|
|
2173
|
+
|
|
2174
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2175
|
+
if @api_client.config.debugging
|
|
2176
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_fork\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2177
|
+
end
|
|
2178
|
+
return data, status_code, headers
|
|
2179
|
+
end
|
|
2180
|
+
|
|
2181
|
+
# Seeds the native todo with the EXISTING issues across the org's granted repos (default state=open); the webhook keeps them live thereafter.
|
|
2182
|
+
# Seeds the native todo with the EXISTING issues across the org's granted repos (default state=open); the webhook keeps them live thereafter. Org-scoped by the validated principal — a caller only ever backfills its OWN org. Synchronous + bounded (a total time budget and an issue cap) so it returns the counts directly; idempotent by ExtRef, so a re-run continues where a truncated pass left off and never duplicates.
|
|
2183
|
+
# @param github_backfill_in [GithubBackfillIn]
|
|
2184
|
+
# @param [Hash] opts the optional parameters
|
|
2185
|
+
# @return [GithubBackfillResult]
|
|
2186
|
+
def post_integrations_github_issues_backfill(github_backfill_in, opts = {})
|
|
2187
|
+
data, _status_code, _headers = post_integrations_github_issues_backfill_with_http_info(github_backfill_in, opts)
|
|
2188
|
+
data
|
|
2189
|
+
end
|
|
2190
|
+
|
|
2191
|
+
# Seeds the native todo with the EXISTING issues across the org's granted repos (default state=open); the webhook keeps them live thereafter.
|
|
2192
|
+
# Seeds the native todo with the EXISTING issues across the org's granted repos (default state=open); the webhook keeps them live thereafter. Org-scoped by the validated principal — a caller only ever backfills its OWN org. Synchronous + bounded (a total time budget and an issue cap) so it returns the counts directly; idempotent by ExtRef, so a re-run continues where a truncated pass left off and never duplicates.
|
|
2193
|
+
# @param github_backfill_in [GithubBackfillIn]
|
|
2194
|
+
# @param [Hash] opts the optional parameters
|
|
2195
|
+
# @return [Array<(GithubBackfillResult, Integer, Hash)>] GithubBackfillResult data, response status code and response headers
|
|
2196
|
+
def post_integrations_github_issues_backfill_with_http_info(github_backfill_in, opts = {})
|
|
2197
|
+
if @api_client.config.debugging
|
|
2198
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_issues_backfill ...'
|
|
2199
|
+
end
|
|
2200
|
+
# verify the required parameter 'github_backfill_in' is set
|
|
2201
|
+
if @api_client.config.client_side_validation && github_backfill_in.nil?
|
|
2202
|
+
fail ArgumentError, "Missing the required parameter 'github_backfill_in' when calling IntegrationsApi.post_integrations_github_issues_backfill"
|
|
2203
|
+
end
|
|
2204
|
+
# resource path
|
|
2205
|
+
local_var_path = '/v1/integrations/github/issues/backfill'
|
|
2206
|
+
|
|
2207
|
+
# query parameters
|
|
2208
|
+
query_params = opts[:query_params] || {}
|
|
2209
|
+
|
|
2210
|
+
# header parameters
|
|
2211
|
+
header_params = opts[:header_params] || {}
|
|
2212
|
+
# HTTP header 'Accept' (if needed)
|
|
2213
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2214
|
+
# HTTP header 'Content-Type'
|
|
2215
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2216
|
+
if !content_type.nil?
|
|
2217
|
+
header_params['Content-Type'] = content_type
|
|
2218
|
+
end
|
|
2219
|
+
|
|
2220
|
+
# form parameters
|
|
2221
|
+
form_params = opts[:form_params] || {}
|
|
2222
|
+
|
|
2223
|
+
# http body (model)
|
|
2224
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_backfill_in)
|
|
2225
|
+
|
|
2226
|
+
# return_type
|
|
2227
|
+
return_type = opts[:debug_return_type] || 'GithubBackfillResult'
|
|
2228
|
+
|
|
2229
|
+
# auth_names
|
|
2230
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2231
|
+
|
|
2232
|
+
new_options = opts.merge(
|
|
2233
|
+
:operation => :"IntegrationsApi.post_integrations_github_issues_backfill",
|
|
2234
|
+
:header_params => header_params,
|
|
2235
|
+
:query_params => query_params,
|
|
2236
|
+
:form_params => form_params,
|
|
2237
|
+
:body => post_body,
|
|
2238
|
+
:auth_names => auth_names,
|
|
2239
|
+
:return_type => return_type
|
|
2240
|
+
)
|
|
2241
|
+
|
|
2242
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2243
|
+
if @api_client.config.debugging
|
|
2244
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_issues_backfill\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2245
|
+
end
|
|
2246
|
+
return data, status_code, headers
|
|
2247
|
+
end
|
|
2248
|
+
|
|
2249
|
+
# Creates the repo's Pages site and answers 201 Created with it.
|
|
2250
|
+
# Creates the repo's Pages site and answers 201 Created with it. With buildType \"workflow\" the site builds via GitHub Actions; otherwise it builds from a branch source, defaulting to the repo's own default branch when none is given. Only \"/\" and \"/docs\" are legal source paths (GitHub's rule).
|
|
2251
|
+
# @param repo [String] Repo is the repository, from the :repo path segment.
|
|
2252
|
+
# @param github_pages_enable_req [GithubPagesEnableReq]
|
|
2253
|
+
# @param [Hash] opts the optional parameters
|
|
2254
|
+
# @return [GithubPagesView]
|
|
2255
|
+
def post_integrations_github_repos_by_repo_pages(repo, github_pages_enable_req, opts = {})
|
|
2256
|
+
data, _status_code, _headers = post_integrations_github_repos_by_repo_pages_with_http_info(repo, github_pages_enable_req, opts)
|
|
2257
|
+
data
|
|
2258
|
+
end
|
|
2259
|
+
|
|
2260
|
+
# Creates the repo's Pages site and answers 201 Created with it.
|
|
2261
|
+
# Creates the repo's Pages site and answers 201 Created with it. With buildType \"workflow\" the site builds via GitHub Actions; otherwise it builds from a branch source, defaulting to the repo's own default branch when none is given. Only \"/\" and \"/docs\" are legal source paths (GitHub's rule).
|
|
2262
|
+
# @param repo [String] Repo is the repository, from the :repo path segment.
|
|
2263
|
+
# @param github_pages_enable_req [GithubPagesEnableReq]
|
|
2264
|
+
# @param [Hash] opts the optional parameters
|
|
2265
|
+
# @return [Array<(GithubPagesView, Integer, Hash)>] GithubPagesView data, response status code and response headers
|
|
2266
|
+
def post_integrations_github_repos_by_repo_pages_with_http_info(repo, github_pages_enable_req, opts = {})
|
|
2267
|
+
if @api_client.config.debugging
|
|
2268
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_repos_by_repo_pages ...'
|
|
2269
|
+
end
|
|
2270
|
+
# verify the required parameter 'repo' is set
|
|
2271
|
+
if @api_client.config.client_side_validation && repo.nil?
|
|
2272
|
+
fail ArgumentError, "Missing the required parameter 'repo' when calling IntegrationsApi.post_integrations_github_repos_by_repo_pages"
|
|
2273
|
+
end
|
|
2274
|
+
# verify the required parameter 'github_pages_enable_req' is set
|
|
2275
|
+
if @api_client.config.client_side_validation && github_pages_enable_req.nil?
|
|
2276
|
+
fail ArgumentError, "Missing the required parameter 'github_pages_enable_req' when calling IntegrationsApi.post_integrations_github_repos_by_repo_pages"
|
|
2277
|
+
end
|
|
2278
|
+
# resource path
|
|
2279
|
+
local_var_path = '/v1/integrations/github/repos/{repo}/pages'.sub('{' + 'repo' + '}', CGI.escape(repo.to_s))
|
|
2280
|
+
|
|
2281
|
+
# query parameters
|
|
2282
|
+
query_params = opts[:query_params] || {}
|
|
2283
|
+
|
|
2284
|
+
# header parameters
|
|
2285
|
+
header_params = opts[:header_params] || {}
|
|
2286
|
+
# HTTP header 'Accept' (if needed)
|
|
2287
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2288
|
+
# HTTP header 'Content-Type'
|
|
2289
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2290
|
+
if !content_type.nil?
|
|
2291
|
+
header_params['Content-Type'] = content_type
|
|
2292
|
+
end
|
|
2293
|
+
|
|
2294
|
+
# form parameters
|
|
2295
|
+
form_params = opts[:form_params] || {}
|
|
2296
|
+
|
|
2297
|
+
# http body (model)
|
|
2298
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_pages_enable_req)
|
|
2299
|
+
|
|
2300
|
+
# return_type
|
|
2301
|
+
return_type = opts[:debug_return_type] || 'GithubPagesView'
|
|
2302
|
+
|
|
2303
|
+
# auth_names
|
|
2304
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2305
|
+
|
|
2306
|
+
new_options = opts.merge(
|
|
2307
|
+
:operation => :"IntegrationsApi.post_integrations_github_repos_by_repo_pages",
|
|
2308
|
+
:header_params => header_params,
|
|
2309
|
+
:query_params => query_params,
|
|
2310
|
+
:form_params => form_params,
|
|
2311
|
+
:body => post_body,
|
|
2312
|
+
:auth_names => auth_names,
|
|
2313
|
+
:return_type => return_type
|
|
2314
|
+
)
|
|
2315
|
+
|
|
2316
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2317
|
+
if @api_client.config.debugging
|
|
2318
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_repos_by_repo_pages\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2319
|
+
end
|
|
2320
|
+
return data, status_code, headers
|
|
2321
|
+
end
|
|
2322
|
+
|
|
2323
|
+
# Requests a Pages rebuild and returns the queued build's status.
|
|
2324
|
+
# Requests a Pages rebuild and returns the queued build's status. The build is queued AT GITHUB, not completed here, so the answer is 202 Accepted and its status is the one GitHub reported at queue time. 404 when the repository has no Pages site, or when the org's installation was not granted it.
|
|
2325
|
+
# @param repo [String] Repo is the repository's short name within the org's installation, with no owner prefix (the owner is server-derived from the grant). A trailing \".git\" is stripped.
|
|
2326
|
+
# @param [Hash] opts the optional parameters
|
|
2327
|
+
# @return [GithubPagesBuildOut]
|
|
2328
|
+
def post_integrations_github_repos_by_repo_pages_builds(repo, opts = {})
|
|
2329
|
+
data, _status_code, _headers = post_integrations_github_repos_by_repo_pages_builds_with_http_info(repo, opts)
|
|
2330
|
+
data
|
|
2331
|
+
end
|
|
2332
|
+
|
|
2333
|
+
# Requests a Pages rebuild and returns the queued build's status.
|
|
2334
|
+
# Requests a Pages rebuild and returns the queued build's status. The build is queued AT GITHUB, not completed here, so the answer is 202 Accepted and its status is the one GitHub reported at queue time. 404 when the repository has no Pages site, or when the org's installation was not granted it.
|
|
2335
|
+
# @param repo [String] Repo is the repository's short name within the org's installation, with no owner prefix (the owner is server-derived from the grant). A trailing \".git\" is stripped.
|
|
2336
|
+
# @param [Hash] opts the optional parameters
|
|
2337
|
+
# @return [Array<(GithubPagesBuildOut, Integer, Hash)>] GithubPagesBuildOut data, response status code and response headers
|
|
2338
|
+
def post_integrations_github_repos_by_repo_pages_builds_with_http_info(repo, opts = {})
|
|
2339
|
+
if @api_client.config.debugging
|
|
2340
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_repos_by_repo_pages_builds ...'
|
|
2341
|
+
end
|
|
2342
|
+
# verify the required parameter 'repo' is set
|
|
2343
|
+
if @api_client.config.client_side_validation && repo.nil?
|
|
2344
|
+
fail ArgumentError, "Missing the required parameter 'repo' when calling IntegrationsApi.post_integrations_github_repos_by_repo_pages_builds"
|
|
2345
|
+
end
|
|
2346
|
+
# resource path
|
|
2347
|
+
local_var_path = '/v1/integrations/github/repos/{repo}/pages/builds'.sub('{' + 'repo' + '}', CGI.escape(repo.to_s))
|
|
2348
|
+
|
|
2349
|
+
# query parameters
|
|
2350
|
+
query_params = opts[:query_params] || {}
|
|
2351
|
+
|
|
2352
|
+
# header parameters
|
|
2353
|
+
header_params = opts[:header_params] || {}
|
|
2354
|
+
# HTTP header 'Accept' (if needed)
|
|
2355
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2356
|
+
|
|
2357
|
+
# form parameters
|
|
2358
|
+
form_params = opts[:form_params] || {}
|
|
2359
|
+
|
|
2360
|
+
# http body (model)
|
|
2361
|
+
post_body = opts[:debug_body]
|
|
2362
|
+
|
|
2363
|
+
# return_type
|
|
2364
|
+
return_type = opts[:debug_return_type] || 'GithubPagesBuildOut'
|
|
2365
|
+
|
|
2366
|
+
# auth_names
|
|
2367
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2368
|
+
|
|
2369
|
+
new_options = opts.merge(
|
|
2370
|
+
:operation => :"IntegrationsApi.post_integrations_github_repos_by_repo_pages_builds",
|
|
2371
|
+
:header_params => header_params,
|
|
2372
|
+
:query_params => query_params,
|
|
2373
|
+
:form_params => form_params,
|
|
2374
|
+
:body => post_body,
|
|
2375
|
+
:auth_names => auth_names,
|
|
2376
|
+
:return_type => return_type
|
|
2377
|
+
)
|
|
2378
|
+
|
|
2379
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2380
|
+
if @api_client.config.debugging
|
|
2381
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_repos_by_repo_pages_builds\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2382
|
+
end
|
|
2383
|
+
return data, status_code, headers
|
|
2384
|
+
end
|
|
2385
|
+
|
|
2386
|
+
# Imports the selected (or all) granted repos into git.hanzo.ai.
|
|
2387
|
+
# Imports the selected (or all) granted repos into git.hanzo.ai. The selection is intersected with the installation's GRANTED set, so a client can never import a repo the App was not granted (org isolation + a grant check). The import runs in a bounded background worker (don't block the request), so the answer is 202 Accepted; poll GET /v1/integrations/github/repos for the per-repo status to flip to imported.
|
|
2388
|
+
# @param github_import_in [GithubImportIn]
|
|
2389
|
+
# @param [Hash] opts the optional parameters
|
|
2390
|
+
# @return [GithubImportOut]
|
|
2391
|
+
def post_integrations_github_repos_import(github_import_in, opts = {})
|
|
2392
|
+
data, _status_code, _headers = post_integrations_github_repos_import_with_http_info(github_import_in, opts)
|
|
2393
|
+
data
|
|
2394
|
+
end
|
|
2395
|
+
|
|
2396
|
+
# Imports the selected (or all) granted repos into git.hanzo.ai.
|
|
2397
|
+
# Imports the selected (or all) granted repos into git.hanzo.ai. The selection is intersected with the installation's GRANTED set, so a client can never import a repo the App was not granted (org isolation + a grant check). The import runs in a bounded background worker (don't block the request), so the answer is 202 Accepted; poll GET /v1/integrations/github/repos for the per-repo status to flip to imported.
|
|
2398
|
+
# @param github_import_in [GithubImportIn]
|
|
2399
|
+
# @param [Hash] opts the optional parameters
|
|
2400
|
+
# @return [Array<(GithubImportOut, Integer, Hash)>] GithubImportOut data, response status code and response headers
|
|
2401
|
+
def post_integrations_github_repos_import_with_http_info(github_import_in, opts = {})
|
|
2402
|
+
if @api_client.config.debugging
|
|
2403
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_repos_import ...'
|
|
2404
|
+
end
|
|
2405
|
+
# verify the required parameter 'github_import_in' is set
|
|
2406
|
+
if @api_client.config.client_side_validation && github_import_in.nil?
|
|
2407
|
+
fail ArgumentError, "Missing the required parameter 'github_import_in' when calling IntegrationsApi.post_integrations_github_repos_import"
|
|
2408
|
+
end
|
|
2409
|
+
# resource path
|
|
2410
|
+
local_var_path = '/v1/integrations/github/repos/import'
|
|
2411
|
+
|
|
2412
|
+
# query parameters
|
|
2413
|
+
query_params = opts[:query_params] || {}
|
|
2414
|
+
|
|
2415
|
+
# header parameters
|
|
2416
|
+
header_params = opts[:header_params] || {}
|
|
2417
|
+
# HTTP header 'Accept' (if needed)
|
|
2418
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2419
|
+
# HTTP header 'Content-Type'
|
|
2420
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2421
|
+
if !content_type.nil?
|
|
2422
|
+
header_params['Content-Type'] = content_type
|
|
2423
|
+
end
|
|
2424
|
+
|
|
2425
|
+
# form parameters
|
|
2426
|
+
form_params = opts[:form_params] || {}
|
|
2427
|
+
|
|
2428
|
+
# http body (model)
|
|
2429
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_import_in)
|
|
2430
|
+
|
|
2431
|
+
# return_type
|
|
2432
|
+
return_type = opts[:debug_return_type] || 'GithubImportOut'
|
|
2433
|
+
|
|
2434
|
+
# auth_names
|
|
2435
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2436
|
+
|
|
2437
|
+
new_options = opts.merge(
|
|
2438
|
+
:operation => :"IntegrationsApi.post_integrations_github_repos_import",
|
|
2439
|
+
:header_params => header_params,
|
|
2440
|
+
:query_params => query_params,
|
|
2441
|
+
:form_params => form_params,
|
|
2442
|
+
:body => post_body,
|
|
2443
|
+
:auth_names => auth_names,
|
|
2444
|
+
:return_type => return_type
|
|
2445
|
+
)
|
|
2446
|
+
|
|
2447
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2448
|
+
if @api_client.config.debugging
|
|
2449
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_repos_import\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2450
|
+
end
|
|
2451
|
+
return data, status_code, headers
|
|
2452
|
+
end
|
|
2453
|
+
|
|
2454
|
+
# Finds repositories on GitHub.
|
|
2455
|
+
# Finds repositories on GitHub. This reads the PUBLIC index and returns nothing an installation unlocks: it is how you find a repository to fork, not a way to see inside one. The org's own token is used only so the query is rate-limited against the installation rather than anonymously — the results are the same ones anyone would get.
|
|
2456
|
+
# @param github_search_req [GithubSearchReq]
|
|
2457
|
+
# @param [Hash] opts the optional parameters
|
|
2458
|
+
# @return [GithubSearchOut]
|
|
2459
|
+
def post_integrations_github_search(github_search_req, opts = {})
|
|
2460
|
+
data, _status_code, _headers = post_integrations_github_search_with_http_info(github_search_req, opts)
|
|
2461
|
+
data
|
|
2462
|
+
end
|
|
2463
|
+
|
|
2464
|
+
# Finds repositories on GitHub.
|
|
2465
|
+
# Finds repositories on GitHub. This reads the PUBLIC index and returns nothing an installation unlocks: it is how you find a repository to fork, not a way to see inside one. The org's own token is used only so the query is rate-limited against the installation rather than anonymously — the results are the same ones anyone would get.
|
|
2466
|
+
# @param github_search_req [GithubSearchReq]
|
|
2467
|
+
# @param [Hash] opts the optional parameters
|
|
2468
|
+
# @return [Array<(GithubSearchOut, Integer, Hash)>] GithubSearchOut data, response status code and response headers
|
|
2469
|
+
def post_integrations_github_search_with_http_info(github_search_req, opts = {})
|
|
2470
|
+
if @api_client.config.debugging
|
|
2471
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_search ...'
|
|
2472
|
+
end
|
|
2473
|
+
# verify the required parameter 'github_search_req' is set
|
|
2474
|
+
if @api_client.config.client_side_validation && github_search_req.nil?
|
|
2475
|
+
fail ArgumentError, "Missing the required parameter 'github_search_req' when calling IntegrationsApi.post_integrations_github_search"
|
|
2476
|
+
end
|
|
2477
|
+
# resource path
|
|
2478
|
+
local_var_path = '/v1/integrations/github/search'
|
|
2479
|
+
|
|
2480
|
+
# query parameters
|
|
2481
|
+
query_params = opts[:query_params] || {}
|
|
2482
|
+
|
|
2483
|
+
# header parameters
|
|
2484
|
+
header_params = opts[:header_params] || {}
|
|
2485
|
+
# HTTP header 'Accept' (if needed)
|
|
2486
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2487
|
+
# HTTP header 'Content-Type'
|
|
2488
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2489
|
+
if !content_type.nil?
|
|
2490
|
+
header_params['Content-Type'] = content_type
|
|
2491
|
+
end
|
|
2492
|
+
|
|
2493
|
+
# form parameters
|
|
2494
|
+
form_params = opts[:form_params] || {}
|
|
2495
|
+
|
|
2496
|
+
# http body (model)
|
|
2497
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_search_req)
|
|
2498
|
+
|
|
2499
|
+
# return_type
|
|
2500
|
+
return_type = opts[:debug_return_type] || 'GithubSearchOut'
|
|
2501
|
+
|
|
2502
|
+
# auth_names
|
|
2503
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2504
|
+
|
|
2505
|
+
new_options = opts.merge(
|
|
2506
|
+
:operation => :"IntegrationsApi.post_integrations_github_search",
|
|
2507
|
+
:header_params => header_params,
|
|
2508
|
+
:query_params => query_params,
|
|
2509
|
+
:form_params => form_params,
|
|
2510
|
+
:body => post_body,
|
|
2511
|
+
:auth_names => auth_names,
|
|
2512
|
+
:return_type => return_type
|
|
2513
|
+
)
|
|
2514
|
+
|
|
2515
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2516
|
+
if @api_client.config.debugging
|
|
2517
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_search\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2518
|
+
end
|
|
2519
|
+
return data, status_code, headers
|
|
2520
|
+
end
|
|
2521
|
+
|
|
2522
|
+
# GitHub App webhook
|
|
2523
|
+
# The address the GitHub App delivers events to. A push is handed to the repository sync engine, and an issue or issue-comment event is mirrored into the native todo — idempotently, so the same issue re-syncs to one row however many times it is edited, closed or reopened. A repository event that puts a repo INTO the granted set (created, transferred, unarchived) raises one todo offering to import it; accepting means POSTing that repo to /v1/integrations/github/import. It never imports on its own. It answers a benign 200 for everything it does not act on — the ping, other event types, an unknown installation — deliberately, so GitHub does not enter a retry storm over events that were never going to do anything. Only a bad signature and a genuine sync failure are non-200, and an oversized payload is refused outright. Two sync rules are worth stating because neither is guessable. EVERY ref syncs, tags as well as branches, because releases are cut by tag and filtering them would stop publishing with nothing reporting a failure. And a delete is NEVER propagated: the native side is canonical, so an inbound delete never removes a native ref. The payload is verified by HMAC against the webhook secret before it is parsed. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400.
|
|
2524
|
+
# @param [Hash] opts the optional parameters
|
|
2525
|
+
# @return [nil]
|
|
2526
|
+
def post_integrations_github_webhook(opts = {})
|
|
2527
|
+
post_integrations_github_webhook_with_http_info(opts)
|
|
2528
|
+
nil
|
|
2529
|
+
end
|
|
2530
|
+
|
|
2531
|
+
# GitHub App webhook
|
|
2532
|
+
# The address the GitHub App delivers events to. A push is handed to the repository sync engine, and an issue or issue-comment event is mirrored into the native todo — idempotently, so the same issue re-syncs to one row however many times it is edited, closed or reopened. A repository event that puts a repo INTO the granted set (created, transferred, unarchived) raises one todo offering to import it; accepting means POSTing that repo to /v1/integrations/github/import. It never imports on its own. It answers a benign 200 for everything it does not act on — the ping, other event types, an unknown installation — deliberately, so GitHub does not enter a retry storm over events that were never going to do anything. Only a bad signature and a genuine sync failure are non-200, and an oversized payload is refused outright. Two sync rules are worth stating because neither is guessable. EVERY ref syncs, tags as well as branches, because releases are cut by tag and filtering them would stop publishing with nothing reporting a failure. And a delete is NEVER propagated: the native side is canonical, so an inbound delete never removes a native ref. The payload is verified by HMAC against the webhook secret before it is parsed. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400.
|
|
2533
|
+
# @param [Hash] opts the optional parameters
|
|
2534
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2535
|
+
def post_integrations_github_webhook_with_http_info(opts = {})
|
|
2536
|
+
if @api_client.config.debugging
|
|
2537
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_github_webhook ...'
|
|
2538
|
+
end
|
|
2539
|
+
# resource path
|
|
2540
|
+
local_var_path = '/v1/integrations/github/webhook'
|
|
2541
|
+
|
|
2542
|
+
# query parameters
|
|
2543
|
+
query_params = opts[:query_params] || {}
|
|
2544
|
+
|
|
2545
|
+
# header parameters
|
|
2546
|
+
header_params = opts[:header_params] || {}
|
|
2547
|
+
|
|
2548
|
+
# form parameters
|
|
2549
|
+
form_params = opts[:form_params] || {}
|
|
2550
|
+
|
|
2551
|
+
# http body (model)
|
|
2552
|
+
post_body = opts[:debug_body]
|
|
2553
|
+
|
|
2554
|
+
# return_type
|
|
2555
|
+
return_type = opts[:debug_return_type]
|
|
2556
|
+
|
|
2557
|
+
# auth_names
|
|
2558
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2559
|
+
|
|
2560
|
+
new_options = opts.merge(
|
|
2561
|
+
:operation => :"IntegrationsApi.post_integrations_github_webhook",
|
|
2562
|
+
:header_params => header_params,
|
|
2563
|
+
:query_params => query_params,
|
|
2564
|
+
:form_params => form_params,
|
|
2565
|
+
:body => post_body,
|
|
2566
|
+
:auth_names => auth_names,
|
|
2567
|
+
:return_type => return_type
|
|
2568
|
+
)
|
|
2569
|
+
|
|
2570
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2571
|
+
if @api_client.config.debugging
|
|
2572
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_github_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2573
|
+
end
|
|
2574
|
+
return data, status_code, headers
|
|
2575
|
+
end
|
|
2576
|
+
|
|
2577
|
+
# Receive OpenRouter Broadcast traces as usage rows
|
|
2578
|
+
# OpenRouter's spend is invisible to every Hanzo money lens because those lenses read hanzo.cloud_usage and OpenRouter meters keys of its own. Point a Broadcast destination (Settings ▸ Observability ▸ Webhook) at this endpoint and each generation span becomes ONE row in that same ledger with provider `openrouter`, so one query answers what we spend everywhere. Enable the Cost and Identity field categories: cost is the money and identity carries `openrouter.api_key_name`, which is what says WHICH key spent it — it lands in `account` as openrouter/<key name>. AUTHENTICATION IS A HANZO KEY. Broadcast signs nothing; its only authentication is the destination's Headers map, so send a key as `Authorization: Bearer pk-…` and it is admitted exactly as /v1/event admits a beacon's: a project key resolves through the project that minted it, an IAM-issued key through IAM. That key names the org every row is filed under; it can write and cannot read. No key, or a key that names no org, is 401 and nothing is stored. The body is OTLP/JSON — `{resourceSpans:[{scopeSpans:[{spans:[…]}]}]}` — exactly as OpenTelemetry defines it; the model, tokens and cost are read from each span's `gen_ai.*` attributes and the key name from `openrouter.api_key_name`. The answer is `{stored, dropped}`: how many generations became rows, and how many spans named no model. Those are OpenRouter's trace and span parents — they carry no cost to meter. An empty payload stores nothing and answers 200, which is what makes Test Connection pass. A warehouse that cannot take the rows answers 503 so the delivery shows red and can be replayed: a row is keyed by its span id, so a redelivery collapses rather than double-counting.
|
|
2579
|
+
# @param [Hash] opts the optional parameters
|
|
2580
|
+
# @option opts [Hash<String, Object>] :request_body
|
|
2581
|
+
# @return [Hash<String, Object>]
|
|
2582
|
+
def post_integrations_openrouter_webhook(opts = {})
|
|
2583
|
+
data, _status_code, _headers = post_integrations_openrouter_webhook_with_http_info(opts)
|
|
2584
|
+
data
|
|
2585
|
+
end
|
|
2586
|
+
|
|
2587
|
+
# Receive OpenRouter Broadcast traces as usage rows
|
|
2588
|
+
# OpenRouter's spend is invisible to every Hanzo money lens because those lenses read hanzo.cloud_usage and OpenRouter meters keys of its own. Point a Broadcast destination (Settings ▸ Observability ▸ Webhook) at this endpoint and each generation span becomes ONE row in that same ledger with provider `openrouter`, so one query answers what we spend everywhere. Enable the Cost and Identity field categories: cost is the money and identity carries `openrouter.api_key_name`, which is what says WHICH key spent it — it lands in `account` as openrouter/<key name>. AUTHENTICATION IS A HANZO KEY. Broadcast signs nothing; its only authentication is the destination's Headers map, so send a key as `Authorization: Bearer pk-…` and it is admitted exactly as /v1/event admits a beacon's: a project key resolves through the project that minted it, an IAM-issued key through IAM. That key names the org every row is filed under; it can write and cannot read. No key, or a key that names no org, is 401 and nothing is stored. The body is OTLP/JSON — `{resourceSpans:[{scopeSpans:[{spans:[…]}]}]}` — exactly as OpenTelemetry defines it; the model, tokens and cost are read from each span's `gen_ai.*` attributes and the key name from `openrouter.api_key_name`. The answer is `{stored, dropped}`: how many generations became rows, and how many spans named no model. Those are OpenRouter's trace and span parents — they carry no cost to meter. An empty payload stores nothing and answers 200, which is what makes Test Connection pass. A warehouse that cannot take the rows answers 503 so the delivery shows red and can be replayed: a row is keyed by its span id, so a redelivery collapses rather than double-counting.
|
|
2589
|
+
# @param [Hash] opts the optional parameters
|
|
2590
|
+
# @option opts [Hash<String, Object>] :request_body
|
|
2591
|
+
# @return [Array<(Hash<String, Object>, Integer, Hash)>] Hash<String, Object> data, response status code and response headers
|
|
2592
|
+
def post_integrations_openrouter_webhook_with_http_info(opts = {})
|
|
2593
|
+
if @api_client.config.debugging
|
|
2594
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_openrouter_webhook ...'
|
|
2595
|
+
end
|
|
2596
|
+
# resource path
|
|
2597
|
+
local_var_path = '/v1/integrations/openrouter/webhook'
|
|
2598
|
+
|
|
2599
|
+
# query parameters
|
|
2600
|
+
query_params = opts[:query_params] || {}
|
|
2601
|
+
|
|
2602
|
+
# header parameters
|
|
2603
|
+
header_params = opts[:header_params] || {}
|
|
2604
|
+
# HTTP header 'Accept' (if needed)
|
|
2605
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2606
|
+
# HTTP header 'Content-Type'
|
|
2607
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
2608
|
+
if !content_type.nil?
|
|
2609
|
+
header_params['Content-Type'] = content_type
|
|
2610
|
+
end
|
|
2611
|
+
|
|
2612
|
+
# form parameters
|
|
2613
|
+
form_params = opts[:form_params] || {}
|
|
2614
|
+
|
|
2615
|
+
# http body (model)
|
|
2616
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(opts[:'request_body'])
|
|
2617
|
+
|
|
2618
|
+
# return_type
|
|
2619
|
+
return_type = opts[:debug_return_type] || 'Hash<String, Object>'
|
|
2620
|
+
|
|
2621
|
+
# auth_names
|
|
2622
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2623
|
+
|
|
2624
|
+
new_options = opts.merge(
|
|
2625
|
+
:operation => :"IntegrationsApi.post_integrations_openrouter_webhook",
|
|
2626
|
+
:header_params => header_params,
|
|
2627
|
+
:query_params => query_params,
|
|
2628
|
+
:form_params => form_params,
|
|
2629
|
+
:body => post_body,
|
|
2630
|
+
:auth_names => auth_names,
|
|
2631
|
+
:return_type => return_type
|
|
2632
|
+
)
|
|
2633
|
+
|
|
2634
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2635
|
+
if @api_client.config.debugging
|
|
2636
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_openrouter_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2637
|
+
end
|
|
2638
|
+
return data, status_code, headers
|
|
2639
|
+
end
|
|
2640
|
+
|
|
2641
|
+
# Slack slash command webhook
|
|
2642
|
+
# The address Slack posts a slash command to, form-encoded. It acknowledges inside Slack's three-second budget and posts the answer afterwards to the command's own response URL, which is why the immediate reply is empty. The body is verified against the same app signing secret as the events webhook, and a repeat of the same command invocation is absorbed rather than answered twice. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2643
|
+
# @param [Hash] opts the optional parameters
|
|
2644
|
+
# @return [nil]
|
|
2645
|
+
def post_integrations_slack_commands(opts = {})
|
|
2646
|
+
post_integrations_slack_commands_with_http_info(opts)
|
|
2647
|
+
nil
|
|
2648
|
+
end
|
|
2649
|
+
|
|
2650
|
+
# Slack slash command webhook
|
|
2651
|
+
# The address Slack posts a slash command to, form-encoded. It acknowledges inside Slack's three-second budget and posts the answer afterwards to the command's own response URL, which is why the immediate reply is empty. The body is verified against the same app signing secret as the events webhook, and a repeat of the same command invocation is absorbed rather than answered twice. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2652
|
+
# @param [Hash] opts the optional parameters
|
|
2653
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2654
|
+
def post_integrations_slack_commands_with_http_info(opts = {})
|
|
2655
|
+
if @api_client.config.debugging
|
|
2656
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_slack_commands ...'
|
|
2657
|
+
end
|
|
2658
|
+
# resource path
|
|
2659
|
+
local_var_path = '/v1/integrations/slack/commands'
|
|
2660
|
+
|
|
2661
|
+
# query parameters
|
|
2662
|
+
query_params = opts[:query_params] || {}
|
|
2663
|
+
|
|
2664
|
+
# header parameters
|
|
2665
|
+
header_params = opts[:header_params] || {}
|
|
2666
|
+
|
|
2667
|
+
# form parameters
|
|
2668
|
+
form_params = opts[:form_params] || {}
|
|
2669
|
+
|
|
2670
|
+
# http body (model)
|
|
2671
|
+
post_body = opts[:debug_body]
|
|
2672
|
+
|
|
2673
|
+
# return_type
|
|
2674
|
+
return_type = opts[:debug_return_type]
|
|
2675
|
+
|
|
2676
|
+
# auth_names
|
|
2677
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2678
|
+
|
|
2679
|
+
new_options = opts.merge(
|
|
2680
|
+
:operation => :"IntegrationsApi.post_integrations_slack_commands",
|
|
2681
|
+
:header_params => header_params,
|
|
2682
|
+
:query_params => query_params,
|
|
2683
|
+
:form_params => form_params,
|
|
2684
|
+
:body => post_body,
|
|
2685
|
+
:auth_names => auth_names,
|
|
2686
|
+
:return_type => return_type
|
|
2687
|
+
)
|
|
2688
|
+
|
|
2689
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2690
|
+
if @api_client.config.debugging
|
|
2691
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_slack_commands\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2692
|
+
end
|
|
2693
|
+
return data, status_code, headers
|
|
2694
|
+
end
|
|
2695
|
+
|
|
2696
|
+
# Slack Events API webhook
|
|
2697
|
+
# The address a Slack app posts workspace events to. It answers Slack's url_verification handshake with the challenge, and routes an @mention or a direct message to an agent turn that replies in the same thread. The turn holds the product's own tools, so a request to change code starts a sandbox run because the model chose to — there is no prefix and no second path. The raw body and its timestamp are verified against the app's signing secret before anything is read from them. Hanzo's own bot messages are dropped, so a reply cannot trigger another reply. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2698
|
+
# @param [Hash] opts the optional parameters
|
|
2699
|
+
# @return [nil]
|
|
2700
|
+
def post_integrations_slack_events(opts = {})
|
|
2701
|
+
post_integrations_slack_events_with_http_info(opts)
|
|
2702
|
+
nil
|
|
2703
|
+
end
|
|
2704
|
+
|
|
2705
|
+
# Slack Events API webhook
|
|
2706
|
+
# The address a Slack app posts workspace events to. It answers Slack's url_verification handshake with the challenge, and routes an @mention or a direct message to an agent turn that replies in the same thread. The turn holds the product's own tools, so a request to change code starts a sandbox run because the model chose to — there is no prefix and no second path. The raw body and its timestamp are verified against the app's signing secret before anything is read from them. Hanzo's own bot messages are dropped, so a reply cannot trigger another reply. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2707
|
+
# @param [Hash] opts the optional parameters
|
|
2708
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2709
|
+
def post_integrations_slack_events_with_http_info(opts = {})
|
|
2710
|
+
if @api_client.config.debugging
|
|
2711
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_slack_events ...'
|
|
2712
|
+
end
|
|
2713
|
+
# resource path
|
|
2714
|
+
local_var_path = '/v1/integrations/slack/events'
|
|
2715
|
+
|
|
2716
|
+
# query parameters
|
|
2717
|
+
query_params = opts[:query_params] || {}
|
|
2718
|
+
|
|
2719
|
+
# header parameters
|
|
2720
|
+
header_params = opts[:header_params] || {}
|
|
2721
|
+
|
|
2722
|
+
# form parameters
|
|
2723
|
+
form_params = opts[:form_params] || {}
|
|
2724
|
+
|
|
2725
|
+
# http body (model)
|
|
2726
|
+
post_body = opts[:debug_body]
|
|
2727
|
+
|
|
2728
|
+
# return_type
|
|
2729
|
+
return_type = opts[:debug_return_type]
|
|
2730
|
+
|
|
2731
|
+
# auth_names
|
|
2732
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2733
|
+
|
|
2734
|
+
new_options = opts.merge(
|
|
2735
|
+
:operation => :"IntegrationsApi.post_integrations_slack_events",
|
|
2736
|
+
:header_params => header_params,
|
|
2737
|
+
:query_params => query_params,
|
|
2738
|
+
:form_params => form_params,
|
|
2739
|
+
:body => post_body,
|
|
2740
|
+
:auth_names => auth_names,
|
|
2741
|
+
:return_type => return_type
|
|
2742
|
+
)
|
|
2743
|
+
|
|
2744
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2745
|
+
if @api_client.config.debugging
|
|
2746
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_slack_events\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2747
|
+
end
|
|
2748
|
+
return data, status_code, headers
|
|
2749
|
+
end
|
|
2750
|
+
|
|
2751
|
+
# Microsoft Teams Bot Framework webhook
|
|
2752
|
+
# The messaging endpoint for the Teams bot. A message activity is routed to an agent turn and answered proactively through the Bot Connection; anything that is not a message with text is acknowledged and ignored. Authentication is the Bot Framework's RS256 JWT, verified against its published keys and bound BOTH to this deployment's app id and to the activity's own service URL. The service-URL binding is the part that matters: without it a token valid for one activity could point the outbound reply somewhere else. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2753
|
+
# @param [Hash] opts the optional parameters
|
|
2754
|
+
# @return [nil]
|
|
2755
|
+
def post_integrations_teams_events(opts = {})
|
|
2756
|
+
post_integrations_teams_events_with_http_info(opts)
|
|
2757
|
+
nil
|
|
2758
|
+
end
|
|
2759
|
+
|
|
2760
|
+
# Microsoft Teams Bot Framework webhook
|
|
2761
|
+
# The messaging endpoint for the Teams bot. A message activity is routed to an agent turn and answered proactively through the Bot Connection; anything that is not a message with text is acknowledged and ignored. Authentication is the Bot Framework's RS256 JWT, verified against its published keys and bound BOTH to this deployment's app id and to the activity's own service URL. The service-URL binding is the part that matters: without it a token valid for one activity could point the outbound reply somewhere else. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2762
|
+
# @param [Hash] opts the optional parameters
|
|
2763
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2764
|
+
def post_integrations_teams_events_with_http_info(opts = {})
|
|
2765
|
+
if @api_client.config.debugging
|
|
2766
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_teams_events ...'
|
|
2767
|
+
end
|
|
2768
|
+
# resource path
|
|
2769
|
+
local_var_path = '/v1/integrations/teams/events'
|
|
2770
|
+
|
|
2771
|
+
# query parameters
|
|
2772
|
+
query_params = opts[:query_params] || {}
|
|
2773
|
+
|
|
2774
|
+
# header parameters
|
|
2775
|
+
header_params = opts[:header_params] || {}
|
|
2776
|
+
|
|
2777
|
+
# form parameters
|
|
2778
|
+
form_params = opts[:form_params] || {}
|
|
2779
|
+
|
|
2780
|
+
# http body (model)
|
|
2781
|
+
post_body = opts[:debug_body]
|
|
2782
|
+
|
|
2783
|
+
# return_type
|
|
2784
|
+
return_type = opts[:debug_return_type]
|
|
2785
|
+
|
|
2786
|
+
# auth_names
|
|
2787
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2788
|
+
|
|
2789
|
+
new_options = opts.merge(
|
|
2790
|
+
:operation => :"IntegrationsApi.post_integrations_teams_events",
|
|
2791
|
+
:header_params => header_params,
|
|
2792
|
+
:query_params => query_params,
|
|
2793
|
+
:form_params => form_params,
|
|
2794
|
+
:body => post_body,
|
|
2795
|
+
:auth_names => auth_names,
|
|
2796
|
+
:return_type => return_type
|
|
2797
|
+
)
|
|
2798
|
+
|
|
2799
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2800
|
+
if @api_client.config.debugging
|
|
2801
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_teams_events\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2802
|
+
end
|
|
2803
|
+
return data, status_code, headers
|
|
2804
|
+
end
|
|
2805
|
+
|
|
2806
|
+
# Mints a short, single-use deep-link code bound to the caller's org and returns the t.me link the console navigates to.
|
|
2807
|
+
# Mints a short, single-use deep-link code bound to the caller's org and returns the t.me link the console navigates to. Org-authed: a caller with no validated principal is 403 (same gate as the framework connect). The code is stored as an oauth_nonce (org,telegram); the webhook's /start handler claims it to bind chat→org. It is short (128-bit hex) so it fits Telegram's 64-char `start` payload limit.
|
|
2808
|
+
# @param [Hash] opts the optional parameters
|
|
2809
|
+
# @return [AuthorizeOut]
|
|
2810
|
+
def post_integrations_telegram_connect(opts = {})
|
|
2811
|
+
data, _status_code, _headers = post_integrations_telegram_connect_with_http_info(opts)
|
|
2812
|
+
data
|
|
2813
|
+
end
|
|
2814
|
+
|
|
2815
|
+
# Mints a short, single-use deep-link code bound to the caller's org and returns the t.me link the console navigates to.
|
|
2816
|
+
# Mints a short, single-use deep-link code bound to the caller's org and returns the t.me link the console navigates to. Org-authed: a caller with no validated principal is 403 (same gate as the framework connect). The code is stored as an oauth_nonce (org,telegram); the webhook's /start handler claims it to bind chat→org. It is short (128-bit hex) so it fits Telegram's 64-char `start` payload limit.
|
|
2817
|
+
# @param [Hash] opts the optional parameters
|
|
2818
|
+
# @return [Array<(AuthorizeOut, Integer, Hash)>] AuthorizeOut data, response status code and response headers
|
|
2819
|
+
def post_integrations_telegram_connect_with_http_info(opts = {})
|
|
2820
|
+
if @api_client.config.debugging
|
|
2821
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_telegram_connect ...'
|
|
2822
|
+
end
|
|
2823
|
+
# resource path
|
|
2824
|
+
local_var_path = '/v1/integrations/telegram/connect'
|
|
2825
|
+
|
|
2826
|
+
# query parameters
|
|
2827
|
+
query_params = opts[:query_params] || {}
|
|
2828
|
+
|
|
2829
|
+
# header parameters
|
|
2830
|
+
header_params = opts[:header_params] || {}
|
|
2831
|
+
# HTTP header 'Accept' (if needed)
|
|
2832
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
2833
|
+
|
|
2834
|
+
# form parameters
|
|
2835
|
+
form_params = opts[:form_params] || {}
|
|
2836
|
+
|
|
2837
|
+
# http body (model)
|
|
2838
|
+
post_body = opts[:debug_body]
|
|
2839
|
+
|
|
2840
|
+
# return_type
|
|
2841
|
+
return_type = opts[:debug_return_type] || 'AuthorizeOut'
|
|
2842
|
+
|
|
2843
|
+
# auth_names
|
|
2844
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2845
|
+
|
|
2846
|
+
new_options = opts.merge(
|
|
2847
|
+
:operation => :"IntegrationsApi.post_integrations_telegram_connect",
|
|
2848
|
+
:header_params => header_params,
|
|
2849
|
+
:query_params => query_params,
|
|
2850
|
+
:form_params => form_params,
|
|
2851
|
+
:body => post_body,
|
|
2852
|
+
:auth_names => auth_names,
|
|
2853
|
+
:return_type => return_type
|
|
2854
|
+
)
|
|
2855
|
+
|
|
2856
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2857
|
+
if @api_client.config.debugging
|
|
2858
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_telegram_connect\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2859
|
+
end
|
|
2860
|
+
return data, status_code, headers
|
|
2861
|
+
end
|
|
2862
|
+
|
|
2863
|
+
# Telegram Bot API webhook
|
|
2864
|
+
# The update webhook for the Telegram bot. It does two jobs: `/start <code>` or `/connect <code>` binds the chat it was sent from to an org, idempotently; anything else is treated as a possible agent trigger. What counts as a trigger differs by chat type, and it is easy to get wrong: in a private chat every message is a trigger, while in a group the message must mention the bot or use the `/hanzo` command. Non-triggers and non-message updates are acknowledged and dropped. Authentication is the secret token Telegram echoes on every update, compared in constant time. A message in a chat that has never been bound is dropped, which is why the bind command exists. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2865
|
+
# @param [Hash] opts the optional parameters
|
|
2866
|
+
# @return [nil]
|
|
2867
|
+
def post_integrations_telegram_webhook(opts = {})
|
|
2868
|
+
post_integrations_telegram_webhook_with_http_info(opts)
|
|
2869
|
+
nil
|
|
2870
|
+
end
|
|
2871
|
+
|
|
2872
|
+
# Telegram Bot API webhook
|
|
2873
|
+
# The update webhook for the Telegram bot. It does two jobs: `/start <code>` or `/connect <code>` binds the chat it was sent from to an org, idempotently; anything else is treated as a possible agent trigger. What counts as a trigger differs by chat type, and it is easy to get wrong: in a private chat every message is a trigger, while in a group the message must mention the bot or use the `/hanzo` command. Non-triggers and non-message updates are acknowledged and dropped. Authentication is the secret token Telegram echoes on every update, compared in constant time. A message in a chat that has never been bound is dropped, which is why the bind command exists. The caller here is the PLATFORM, not a Hanzo tenant, so there is no bearer and no principal. The signature check IS the authentication, and it fails closed. The tenant is never read from the payload either: it is resolved from the verified platform identifier through the connection map, so an event from a workspace nobody connected does nothing. Refusals are written with their own status rather than being flattened to a 500, so a rejected signature reads as 401 and a malformed body as 400. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2874
|
+
# @param [Hash] opts the optional parameters
|
|
2875
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2876
|
+
def post_integrations_telegram_webhook_with_http_info(opts = {})
|
|
2877
|
+
if @api_client.config.debugging
|
|
2878
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_telegram_webhook ...'
|
|
2879
|
+
end
|
|
2880
|
+
# resource path
|
|
2881
|
+
local_var_path = '/v1/integrations/telegram/webhook'
|
|
2882
|
+
|
|
2883
|
+
# query parameters
|
|
2884
|
+
query_params = opts[:query_params] || {}
|
|
2885
|
+
|
|
2886
|
+
# header parameters
|
|
2887
|
+
header_params = opts[:header_params] || {}
|
|
2888
|
+
|
|
2889
|
+
# form parameters
|
|
2890
|
+
form_params = opts[:form_params] || {}
|
|
2891
|
+
|
|
2892
|
+
# http body (model)
|
|
2893
|
+
post_body = opts[:debug_body]
|
|
2894
|
+
|
|
2895
|
+
# return_type
|
|
2896
|
+
return_type = opts[:debug_return_type]
|
|
2897
|
+
|
|
2898
|
+
# auth_names
|
|
2899
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2900
|
+
|
|
2901
|
+
new_options = opts.merge(
|
|
2902
|
+
:operation => :"IntegrationsApi.post_integrations_telegram_webhook",
|
|
2903
|
+
:header_params => header_params,
|
|
2904
|
+
:query_params => query_params,
|
|
2905
|
+
:form_params => form_params,
|
|
2906
|
+
:body => post_body,
|
|
2907
|
+
:auth_names => auth_names,
|
|
2908
|
+
:return_type => return_type
|
|
2909
|
+
)
|
|
2910
|
+
|
|
2911
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2912
|
+
if @api_client.config.debugging
|
|
2913
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_telegram_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2914
|
+
end
|
|
2915
|
+
return data, status_code, headers
|
|
2916
|
+
end
|
|
2917
|
+
|
|
2918
|
+
# WhatsApp Cloud API webhook
|
|
2919
|
+
# One delivery from Meta. Authenticity is the X-Hub-Signature-256 HMAC over the raw body, and it is the whole of it: a message accepted here creates the reply route that authorises this org to answer, so an unsigned delivery would let anyone hand an org a conversation to answer under its own number. Meta batches (entry × changes × messages) and sends status callbacks — sent/delivered/read — through this same address with no message at all. Those are acknowledged and dropped rather than refused, because a non-2xx is retried with backoff and eventually disables the subscription: the only refusals here are an unconfigured endpoint and a bad signature, which are ours to fix and not Meta's to retry. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2920
|
+
# @param [Hash] opts the optional parameters
|
|
2921
|
+
# @return [nil]
|
|
2922
|
+
def post_integrations_whatsapp_webhook(opts = {})
|
|
2923
|
+
post_integrations_whatsapp_webhook_with_http_info(opts)
|
|
2924
|
+
nil
|
|
2925
|
+
end
|
|
2926
|
+
|
|
2927
|
+
# WhatsApp Cloud API webhook
|
|
2928
|
+
# One delivery from Meta. Authenticity is the X-Hub-Signature-256 HMAC over the raw body, and it is the whole of it: a message accepted here creates the reply route that authorises this org to answer, so an unsigned delivery would let anyone hand an org a conversation to answer under its own number. Meta batches (entry × changes × messages) and sends status callbacks — sent/delivered/read — through this same address with no message at all. Those are acknowledged and dropped rather than refused, because a non-2xx is retried with backoff and eventually disables the subscription: the only refusals here are an unconfigured endpoint and a bad signature, which are ours to fix and not Meta's to retry. The answer is acknowledged immediately and the work happens afterwards, because every one of these platforms times out a slow webhook. Duplicate deliveries are absorbed durably, so a platform retry of an event that already ran never runs it a second time or bills for it twice. When the agent pool is full nothing at all is recorded and the delivery is refused as retriable, so the message is re-delivered later rather than being lost or half-processed.
|
|
2929
|
+
# @param [Hash] opts the optional parameters
|
|
2930
|
+
# @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
|
|
2931
|
+
def post_integrations_whatsapp_webhook_with_http_info(opts = {})
|
|
2932
|
+
if @api_client.config.debugging
|
|
2933
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.post_integrations_whatsapp_webhook ...'
|
|
2934
|
+
end
|
|
2935
|
+
# resource path
|
|
2936
|
+
local_var_path = '/v1/integrations/whatsapp/webhook'
|
|
2937
|
+
|
|
2938
|
+
# query parameters
|
|
2939
|
+
query_params = opts[:query_params] || {}
|
|
2940
|
+
|
|
2941
|
+
# header parameters
|
|
2942
|
+
header_params = opts[:header_params] || {}
|
|
2943
|
+
|
|
2944
|
+
# form parameters
|
|
2945
|
+
form_params = opts[:form_params] || {}
|
|
2946
|
+
|
|
2947
|
+
# http body (model)
|
|
2948
|
+
post_body = opts[:debug_body]
|
|
2949
|
+
|
|
2950
|
+
# return_type
|
|
2951
|
+
return_type = opts[:debug_return_type]
|
|
2952
|
+
|
|
2953
|
+
# auth_names
|
|
2954
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
2955
|
+
|
|
2956
|
+
new_options = opts.merge(
|
|
2957
|
+
:operation => :"IntegrationsApi.post_integrations_whatsapp_webhook",
|
|
2958
|
+
:header_params => header_params,
|
|
2959
|
+
:query_params => query_params,
|
|
2960
|
+
:form_params => form_params,
|
|
2961
|
+
:body => post_body,
|
|
2962
|
+
:auth_names => auth_names,
|
|
2963
|
+
:return_type => return_type
|
|
2964
|
+
)
|
|
2965
|
+
|
|
2966
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
2967
|
+
if @api_client.config.debugging
|
|
2968
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#post_integrations_whatsapp_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
2969
|
+
end
|
|
2970
|
+
return data, status_code, headers
|
|
2971
|
+
end
|
|
2972
|
+
|
|
2973
|
+
# Sets or clears the custom domain (cname) and updates HTTPS enforcement, build type, or source.
|
|
2974
|
+
# Sets or clears the custom domain (cname) and updates HTTPS enforcement, build type, or source. ONLY the provided fields are sent to GitHub, so an update never resets a setting the caller did not mention.
|
|
2975
|
+
# @param repo [String] Repo is the repository, from the :repo path segment.
|
|
2976
|
+
# @param github_pages_update_req [GithubPagesUpdateReq]
|
|
2977
|
+
# @param [Hash] opts the optional parameters
|
|
2978
|
+
# @return [GithubPagesUpdatedOut]
|
|
2979
|
+
def put_integrations_github_repos_by_repo_pages(repo, github_pages_update_req, opts = {})
|
|
2980
|
+
data, _status_code, _headers = put_integrations_github_repos_by_repo_pages_with_http_info(repo, github_pages_update_req, opts)
|
|
2981
|
+
data
|
|
2982
|
+
end
|
|
2983
|
+
|
|
2984
|
+
# Sets or clears the custom domain (cname) and updates HTTPS enforcement, build type, or source.
|
|
2985
|
+
# Sets or clears the custom domain (cname) and updates HTTPS enforcement, build type, or source. ONLY the provided fields are sent to GitHub, so an update never resets a setting the caller did not mention.
|
|
2986
|
+
# @param repo [String] Repo is the repository, from the :repo path segment.
|
|
2987
|
+
# @param github_pages_update_req [GithubPagesUpdateReq]
|
|
2988
|
+
# @param [Hash] opts the optional parameters
|
|
2989
|
+
# @return [Array<(GithubPagesUpdatedOut, Integer, Hash)>] GithubPagesUpdatedOut data, response status code and response headers
|
|
2990
|
+
def put_integrations_github_repos_by_repo_pages_with_http_info(repo, github_pages_update_req, opts = {})
|
|
2991
|
+
if @api_client.config.debugging
|
|
2992
|
+
@api_client.config.logger.debug 'Calling API: IntegrationsApi.put_integrations_github_repos_by_repo_pages ...'
|
|
2993
|
+
end
|
|
2994
|
+
# verify the required parameter 'repo' is set
|
|
2995
|
+
if @api_client.config.client_side_validation && repo.nil?
|
|
2996
|
+
fail ArgumentError, "Missing the required parameter 'repo' when calling IntegrationsApi.put_integrations_github_repos_by_repo_pages"
|
|
2997
|
+
end
|
|
2998
|
+
# verify the required parameter 'github_pages_update_req' is set
|
|
2999
|
+
if @api_client.config.client_side_validation && github_pages_update_req.nil?
|
|
3000
|
+
fail ArgumentError, "Missing the required parameter 'github_pages_update_req' when calling IntegrationsApi.put_integrations_github_repos_by_repo_pages"
|
|
3001
|
+
end
|
|
3002
|
+
# resource path
|
|
3003
|
+
local_var_path = '/v1/integrations/github/repos/{repo}/pages'.sub('{' + 'repo' + '}', CGI.escape(repo.to_s))
|
|
3004
|
+
|
|
3005
|
+
# query parameters
|
|
3006
|
+
query_params = opts[:query_params] || {}
|
|
3007
|
+
|
|
3008
|
+
# header parameters
|
|
3009
|
+
header_params = opts[:header_params] || {}
|
|
3010
|
+
# HTTP header 'Accept' (if needed)
|
|
3011
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
3012
|
+
# HTTP header 'Content-Type'
|
|
3013
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
3014
|
+
if !content_type.nil?
|
|
3015
|
+
header_params['Content-Type'] = content_type
|
|
3016
|
+
end
|
|
3017
|
+
|
|
3018
|
+
# form parameters
|
|
3019
|
+
form_params = opts[:form_params] || {}
|
|
3020
|
+
|
|
3021
|
+
# http body (model)
|
|
3022
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(github_pages_update_req)
|
|
3023
|
+
|
|
3024
|
+
# return_type
|
|
3025
|
+
return_type = opts[:debug_return_type] || 'GithubPagesUpdatedOut'
|
|
3026
|
+
|
|
3027
|
+
# auth_names
|
|
3028
|
+
auth_names = opts[:debug_auth_names] || ['bearer']
|
|
3029
|
+
|
|
3030
|
+
new_options = opts.merge(
|
|
3031
|
+
:operation => :"IntegrationsApi.put_integrations_github_repos_by_repo_pages",
|
|
3032
|
+
:header_params => header_params,
|
|
3033
|
+
:query_params => query_params,
|
|
3034
|
+
:form_params => form_params,
|
|
3035
|
+
:body => post_body,
|
|
3036
|
+
:auth_names => auth_names,
|
|
3037
|
+
:return_type => return_type
|
|
3038
|
+
)
|
|
3039
|
+
|
|
3040
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
|
3041
|
+
if @api_client.config.debugging
|
|
3042
|
+
@api_client.config.logger.debug "API called: IntegrationsApi#put_integrations_github_repos_by_repo_pages\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
3043
|
+
end
|
|
3044
|
+
return data, status_code, headers
|
|
3045
|
+
end
|
|
3046
|
+
end
|
|
3047
|
+
end
|