pyfect-dev 0.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pyfect/__init__.py +729 -0
- pyfect/_all.py +242 -0
- pyfect/_background.py +28 -0
- pyfect/_binary_codecs.py +124 -0
- pyfect/_cached.py +165 -0
- pyfect/_catch.py +128 -0
- pyfect/_catch_reason.py +574 -0
- pyfect/_concurrency.py +291 -0
- pyfect/_context_effects.py +163 -0
- pyfect/_context_managers.py +76 -0
- pyfect/_core.py +368 -0
- pyfect/_digits.py +71 -0
- pyfect/_effect_args.py +46 -0
- pyfect/_effect_base.py +71 -0
- pyfect/_effect_concurrency.py +133 -0
- pyfect/_effect_eager.py +103 -0
- pyfect/_effect_errors.py +344 -0
- pyfect/_effect_folding.py +110 -0
- pyfect/_effect_hash.py +140 -0
- pyfect/_effect_logging.py +57 -0
- pyfect/_effect_metrics.py +102 -0
- pyfect/_effect_resources.py +179 -0
- pyfect/_effect_services.py +25 -0
- pyfect/_effect_timing.py +199 -0
- pyfect/_effect_tracing.py +99 -0
- pyfect/_equal.py +195 -0
- pyfect/_extras.py +43 -0
- pyfect/_fiber.py +969 -0
- pyfect/_fiber_all.py +134 -0
- pyfect/_fiber_collections.py +106 -0
- pyfect/_fn.py +706 -0
- pyfect/_hamt.py +174 -0
- pyfect/_interrupt_reason.py +33 -0
- pyfect/_isaac.py +149 -0
- pyfect/_iterables.py +231 -0
- pyfect/_js.py +263 -0
- pyfect/_js_date.py +87 -0
- pyfect/_json_text.py +286 -0
- pyfect/_json_value.py +9 -0
- pyfect/_layer_core.py +403 -0
- pyfect/_layer_for_life.py +33 -0
- pyfect/_layer_tracing.py +70 -0
- pyfect/_locked_ref.py +147 -0
- pyfect/_loop_thread.py +152 -0
- pyfect/_metric_ref.py +29 -0
- pyfect/_one_or_many.py +14 -0
- pyfect/_os_wait.py +118 -0
- pyfect/_path_posix.py +129 -0
- pyfect/_primitives.py +434 -0
- pyfect/_public.py +36 -0
- pyfect/_reasons.py +64 -0
- pyfect/_released.py +67 -0
- pyfect/_root.py +87 -0
- pyfect/_round_robin.py +73 -0
- pyfect/_some.py +17 -0
- pyfect/_stack.py +52 -0
- pyfect/_stack_frame.py +114 -0
- pyfect/_string_hash.py +35 -0
- pyfect/_subscriber_queue.py +47 -0
- pyfect/_tags.py +14 -0
- pyfect/_tracer_ref.py +21 -0
- pyfect/_tx_ops.py +77 -0
- pyfect/_unsubscripted.py +23 -0
- pyfect/_url.py +54 -0
- pyfect/_waiters.py +127 -0
- pyfect/_wake_tracking.py +98 -0
- pyfect/_wire_codec.py +123 -0
- pyfect/ai/__init__.py +73 -0
- pyfect/ai/_approvals.py +249 -0
- pyfect/ai/_decision_answers.py +185 -0
- pyfect/ai/_generated_client.py +298 -0
- pyfect/ai/_generated_support.py +84 -0
- pyfect/ai/_mcp/__init__.py +1 -0
- pyfect/ai/_mcp/batch.py +68 -0
- pyfect/ai/_mcp/client_transport.py +412 -0
- pyfect/ai/_mcp/client_wire.py +284 -0
- pyfect/ai/_mcp/core.py +490 -0
- pyfect/ai/_mcp/dispatch.py +1048 -0
- pyfect/ai/_mcp/http.py +462 -0
- pyfect/ai/_mcp/http_admission.py +269 -0
- pyfect/ai/_mcp/http_status.py +27 -0
- pyfect/ai/_mcp/input_wire.py +226 -0
- pyfect/ai/_mcp/log_levels.py +55 -0
- pyfect/ai/_mcp/param_headers.py +63 -0
- pyfect/ai/_mcp/projection.py +248 -0
- pyfect/ai/_mcp/register.py +683 -0
- pyfect/ai/_mcp/reverse_policy.py +155 -0
- pyfect/ai/_mcp/routing_header.py +24 -0
- pyfect/ai/_mcp/sessions.py +114 -0
- pyfect/ai/_mcp/stdio.py +110 -0
- pyfect/ai/_mcp/subscriptions.py +134 -0
- pyfect/ai/_mcp/tool_schema.py +35 -0
- pyfect/ai/_noul_answers.py +64 -0
- pyfect/ai/_openai_all_of.py +137 -0
- pyfect/ai/_openai_errors.py +233 -0
- pyfect/ai/_provider.py +439 -0
- pyfect/ai/_provider_tools.py +129 -0
- pyfect/ai/_stream_resolution.py +231 -0
- pyfect/ai/_structured_output_checks.py +138 -0
- pyfect/ai/_structured_output_codec.py +229 -0
- pyfect/ai/_structured_output_json.py +109 -0
- pyfect/ai/_tool_call_ids.py +80 -0
- pyfect/ai/ai_error.py +785 -0
- pyfect/ai/anthropic/__init__.py +28 -0
- pyfect/ai/anthropic/_errors.py +164 -0
- pyfect/ai/anthropic/_prompt.py +375 -0
- pyfect/ai/anthropic/_response.py +443 -0
- pyfect/ai/anthropic/_schema.py +206 -0
- pyfect/ai/anthropic/_stream.py +377 -0
- pyfect/ai/anthropic/_tools.py +248 -0
- pyfect/ai/anthropic/client.py +289 -0
- pyfect/ai/anthropic/config.py +32 -0
- pyfect/ai/anthropic/error.py +27 -0
- pyfect/ai/anthropic/language_model.py +366 -0
- pyfect/ai/anthropic/telemetry.py +51 -0
- pyfect/ai/anthropic/tool.py +570 -0
- pyfect/ai/anthropic_structured_output.py +138 -0
- pyfect/ai/chat.py +548 -0
- pyfect/ai/cloudflare/__init__.py +15 -0
- pyfect/ai/cloudflare/_errors.py +108 -0
- pyfect/ai/cloudflare/client.py +174 -0
- pyfect/ai/cloudflare/decision_model.py +117 -0
- pyfect/ai/cloudflare/schema.py +144 -0
- pyfect/ai/decision.py +290 -0
- pyfect/ai/decision_model.py +283 -0
- pyfect/ai/embedding_model.py +177 -0
- pyfect/ai/id_generator.py +79 -0
- pyfect/ai/language_model.py +1077 -0
- pyfect/ai/mcp_client.py +682 -0
- pyfect/ai/mcp_client_error.py +223 -0
- pyfect/ai/mcp_protocol.py +205 -0
- pyfect/ai/mcp_schema.py +1300 -0
- pyfect/ai/mcp_server.py +404 -0
- pyfect/ai/model.py +56 -0
- pyfect/ai/openai/__init__.py +49 -0
- pyfect/ai/openai/_errors.py +89 -0
- pyfect/ai/openai/_prompt.py +527 -0
- pyfect/ai/openai/_requests.py +34 -0
- pyfect/ai/openai/_response.py +569 -0
- pyfect/ai/openai/_schema.py +769 -0
- pyfect/ai/openai/_stream.py +771 -0
- pyfect/ai/openai/_tools.py +128 -0
- pyfect/ai/openai/_web_socket.py +295 -0
- pyfect/ai/openai/client.py +296 -0
- pyfect/ai/openai/client_generated.py +123 -0
- pyfect/ai/openai/config.py +34 -0
- pyfect/ai/openai/decision_model.py +177 -0
- pyfect/ai/openai/embedding_model.py +116 -0
- pyfect/ai/openai/error.py +8 -0
- pyfect/ai/openai/generated/__init__.py +7213 -0
- pyfect/ai/openai/generated/_recursive.py +18 -0
- pyfect/ai/openai/generated/_schemas_0.py +1015 -0
- pyfect/ai/openai/generated/_schemas_1.py +1016 -0
- pyfect/ai/openai/generated/_schemas_2.py +1017 -0
- pyfect/ai/openai/generated/_schemas_3.py +615 -0
- pyfect/ai/openai/generated/client.py +5298 -0
- pyfect/ai/openai/generated/types.py +8123 -0
- pyfect/ai/openai/language_model.py +304 -0
- pyfect/ai/openai/telemetry.py +19 -0
- pyfect/ai/openai/tool.py +391 -0
- pyfect/ai/openai_compat/__init__.py +25 -0
- pyfect/ai/openai_compat/_prompt.py +191 -0
- pyfect/ai/openai_compat/_request.py +153 -0
- pyfect/ai/openai_compat/_response.py +407 -0
- pyfect/ai/openai_compat/_schema.py +97 -0
- pyfect/ai/openai_compat/client.py +234 -0
- pyfect/ai/openai_compat/config.py +32 -0
- pyfect/ai/openai_compat/embedding_model.py +139 -0
- pyfect/ai/openai_compat/error.py +7 -0
- pyfect/ai/openai_compat/language_model.py +245 -0
- pyfect/ai/openai_compat/telemetry.py +51 -0
- pyfect/ai/openai_structured_output.py +118 -0
- pyfect/ai/openrouter/__init__.py +36 -0
- pyfect/ai/openrouter/_errors.py +186 -0
- pyfect/ai/openrouter/_prompt.py +272 -0
- pyfect/ai/openrouter/_response.py +226 -0
- pyfect/ai/openrouter/_stream.py +320 -0
- pyfect/ai/openrouter/client.py +283 -0
- pyfect/ai/openrouter/config.py +36 -0
- pyfect/ai/openrouter/decision_model.py +161 -0
- pyfect/ai/openrouter/error.py +23 -0
- pyfect/ai/openrouter/generated/__init__.py +3029 -0
- pyfect/ai/openrouter/generated/_recursive.py +15 -0
- pyfect/ai/openrouter/generated/_schemas_0.py +1015 -0
- pyfect/ai/openrouter/generated/_schemas_1.py +522 -0
- pyfect/ai/openrouter/generated/client.py +1445 -0
- pyfect/ai/openrouter/generated/types.py +4769 -0
- pyfect/ai/openrouter/language_model.py +345 -0
- pyfect/ai/openrouter/schema.py +165 -0
- pyfect/ai/prompt.py +664 -0
- pyfect/ai/response.py +768 -0
- pyfect/ai/response_id_tracker.py +82 -0
- pyfect/ai/telemetry.py +126 -0
- pyfect/ai/tokenizer.py +61 -0
- pyfect/ai/tool.py +536 -0
- pyfect/ai/toolkit.py +490 -0
- pyfect/ai/typesafe/__init__.py +17 -0
- pyfect/ai/typesafe/_errors.py +120 -0
- pyfect/ai/typesafe/client.py +146 -0
- pyfect/ai/typesafe/config.py +34 -0
- pyfect/ai/typesafe/decision_model.py +90 -0
- pyfect/ai/typesafe/schema.py +140 -0
- pyfect/batching/__init__.py +58 -0
- pyfect/batching/_api.py +71 -0
- pyfect/batching/_engine.py +229 -0
- pyfect/batching/_from_effect.py +76 -0
- pyfect/batching/_persisted.py +98 -0
- pyfect/batching/_request.py +133 -0
- pyfect/batching/_resolver.py +477 -0
- pyfect/batching/_with_cache.py +90 -0
- pyfect/big_decimal.py +500 -0
- pyfect/brand.py +114 -0
- pyfect/byte_size.py +354 -0
- pyfect/cache/__init__.py +29 -0
- pyfect/cache/_cache.py +426 -0
- pyfect/cache/_expiry.py +69 -0
- pyfect/cache/_scoped_cache.py +546 -0
- pyfect/case.py +174 -0
- pyfect/cause.py +462 -0
- pyfect/channel/__init__.py +155 -0
- pyfect/channel/_base.py +92 -0
- pyfect/channel/_catch.py +158 -0
- pyfect/channel/_catch_reason.py +572 -0
- pyfect/channel/_channel.py +158 -0
- pyfect/channel/_combinators.py +220 -0
- pyfect/channel/_concurrency_methods.py +217 -0
- pyfect/channel/_concurrent_map.py +118 -0
- pyfect/channel/_constructors.py +349 -0
- pyfect/channel/_context.py +232 -0
- pyfect/channel/_error_methods.py +336 -0
- pyfect/channel/_errors.py +180 -0
- pyfect/channel/_filters.py +225 -0
- pyfect/channel/_lifecycle.py +71 -0
- pyfect/channel/_lifecycle_methods.py +206 -0
- pyfect/channel/_loop.py +100 -0
- pyfect/channel/_merge.py +246 -0
- pyfect/channel/_repeat.py +154 -0
- pyfect/channel/_run.py +149 -0
- pyfect/channel/_run_methods.py +341 -0
- pyfect/channel/_sinks.py +88 -0
- pyfect/channel/_sources.py +238 -0
- pyfect/channel/_text.py +176 -0
- pyfect/channel/_transform_methods.py +415 -0
- pyfect/channel/_upstream.py +67 -0
- pyfect/channel_schema.py +131 -0
- pyfect/cli/__init__.py +79 -0
- pyfect/cli/_ansi.py +82 -0
- pyfect/cli/_command.py +469 -0
- pyfect/cli/_config.py +164 -0
- pyfect/cli/_environment.py +10 -0
- pyfect/cli/_help.py +195 -0
- pyfect/cli/_lexer.py +81 -0
- pyfect/cli/_parser.py +465 -0
- pyfect/cli/_settings.py +85 -0
- pyfect/cli/_suggest.py +33 -0
- pyfect/cli/_width.py +134 -0
- pyfect/cli/_wizard.py +317 -0
- pyfect/cli/argument.py +212 -0
- pyfect/cli/cli_config.py +40 -0
- pyfect/cli/cli_error.py +242 -0
- pyfect/cli/cli_output.py +305 -0
- pyfect/cli/command.py +440 -0
- pyfect/cli/completions/__init__.py +50 -0
- pyfect/cli/completions/_completer.ps1 +190 -0
- pyfect/cli/completions/_descriptor.py +182 -0
- pyfect/cli/completions/bash.py +300 -0
- pyfect/cli/completions/fish.py +164 -0
- pyfect/cli/completions/powershell.py +156 -0
- pyfect/cli/completions/zsh.py +189 -0
- pyfect/cli/flag.py +246 -0
- pyfect/cli/global_flag.py +99 -0
- pyfect/cli/help_doc.py +63 -0
- pyfect/cli/param.py +789 -0
- pyfect/cli/primitive.py +308 -0
- pyfect/cli/prompt/__init__.py +75 -0
- pyfect/cli/prompt/_auto_complete.py +205 -0
- pyfect/cli/prompt/_choices.py +104 -0
- pyfect/cli/prompt/_confirm.py +195 -0
- pyfect/cli/prompt/_core.py +512 -0
- pyfect/cli/prompt/_date.py +173 -0
- pyfect/cli/prompt/_date_parts.py +387 -0
- pyfect/cli/prompt/_file.py +372 -0
- pyfect/cli/prompt/_multi_select.py +204 -0
- pyfect/cli/prompt/_number.py +257 -0
- pyfect/cli/prompt/_select.py +117 -0
- pyfect/cli/prompt/_text.py +239 -0
- pyfect/cli/terminal_capabilities.py +118 -0
- pyfect/clock.py +150 -0
- pyfect/cluster/__init__.py +155 -0
- pyfect/cluster/_cluster_abandon.py +36 -0
- pyfect/cluster/_cluster_layer.py +122 -0
- pyfect/cluster/_entity_activation.py +16 -0
- pyfect/cluster/_entity_manager/__init__.py +22 -0
- pyfect/cluster/_entity_manager/_activation.py +540 -0
- pyfect/cluster/_entity_manager/_core.py +186 -0
- pyfect/cluster/_entity_manager/_decode.py +60 -0
- pyfect/cluster/_entity_manager/_manager.py +423 -0
- pyfect/cluster/_entity_manager/_state.py +113 -0
- pyfect/cluster/_entity_reaper.py +94 -0
- pyfect/cluster/_hash.py +13 -0
- pyfect/cluster/_interruptors.py +88 -0
- pyfect/cluster/_resource_map.py +179 -0
- pyfect/cluster/_resource_ref.py +266 -0
- pyfect/cluster/_shard_lock.py +14 -0
- pyfect/cluster/cluster_cron.py +230 -0
- pyfect/cluster/cluster_error.py +81 -0
- pyfect/cluster/cluster_http.py +210 -0
- pyfect/cluster/cluster_metrics.py +54 -0
- pyfect/cluster/cluster_schema.py +137 -0
- pyfect/cluster/cluster_socket.py +197 -0
- pyfect/cluster/cluster_workflow_engine/__init__.py +24 -0
- pyfect/cluster/cluster_workflow_engine/_engine.py +1099 -0
- pyfect/cluster/cluster_workflow_engine/_entities.py +298 -0
- pyfect/cluster/deliver_at.py +31 -0
- pyfect/cluster/entity/__init__.py +39 -0
- pyfect/cluster/entity/_entity.py +332 -0
- pyfect/cluster/entity/_handlers.py +168 -0
- pyfect/cluster/entity/_keep_alive.py +74 -0
- pyfect/cluster/entity/_queue.py +103 -0
- pyfect/cluster/entity/_request.py +34 -0
- pyfect/cluster/entity/_services.py +23 -0
- pyfect/cluster/entity/_test_client.py +237 -0
- pyfect/cluster/entity_address.py +25 -0
- pyfect/cluster/entity_id.py +20 -0
- pyfect/cluster/entity_proxy.py +161 -0
- pyfect/cluster/entity_proxy_server.py +103 -0
- pyfect/cluster/entity_resource.py +122 -0
- pyfect/cluster/entity_type.py +20 -0
- pyfect/cluster/envelope.py +307 -0
- pyfect/cluster/http_runner.py +254 -0
- pyfect/cluster/k8s_http_client.py +281 -0
- pyfect/cluster/k8s_types.py +1394 -0
- pyfect/cluster/machine_id.py +21 -0
- pyfect/cluster/message.py +219 -0
- pyfect/cluster/message_storage/__init__.py +67 -0
- pyfect/cluster/message_storage/_encoded.py +393 -0
- pyfect/cluster/message_storage/_memory.py +386 -0
- pyfect/cluster/message_storage/_noop.py +109 -0
- pyfect/cluster/message_storage/_service.py +388 -0
- pyfect/cluster/reply.py +236 -0
- pyfect/cluster/runner.py +32 -0
- pyfect/cluster/runner_address.py +23 -0
- pyfect/cluster/runner_health.py +93 -0
- pyfect/cluster/runner_server.py +286 -0
- pyfect/cluster/runner_storage.py +212 -0
- pyfect/cluster/runners/__init__.py +55 -0
- pyfect/cluster/runners/_local.py +460 -0
- pyfect/cluster/runners/_noop.py +57 -0
- pyfect/cluster/runners/_rpc.py +290 -0
- pyfect/cluster/runners/_service.py +113 -0
- pyfect/cluster/shard_id.py +39 -0
- pyfect/cluster/sharding/__init__.py +12 -0
- pyfect/cluster/sharding/_acquisition.py +490 -0
- pyfect/cluster/sharding/_clients.py +271 -0
- pyfect/cluster/sharding/_make.py +388 -0
- pyfect/cluster/sharding/_routing.py +296 -0
- pyfect/cluster/sharding/_runners_sync.py +198 -0
- pyfect/cluster/sharding/_service.py +91 -0
- pyfect/cluster/sharding/_singletons.py +183 -0
- pyfect/cluster/sharding/_state.py +296 -0
- pyfect/cluster/sharding/_storage_loop.py +421 -0
- pyfect/cluster/sharding_config.py +230 -0
- pyfect/cluster/sharding_registration_event.py +28 -0
- pyfect/cluster/single_runner.py +49 -0
- pyfect/cluster/singleton.py +36 -0
- pyfect/cluster/singleton_address.py +20 -0
- pyfect/cluster/snowflake.py +133 -0
- pyfect/cluster/socket_runner.py +67 -0
- pyfect/cluster/sql_message_storage.py +1001 -0
- pyfect/cluster/sql_runner_storage.py +841 -0
- pyfect/cluster/test_runner.py +23 -0
- pyfect/config/__init__.py +93 -0
- pyfect/config/_all.py +96 -0
- pyfect/config/_collections.py +291 -0
- pyfect/config/_config.py +261 -0
- pyfect/config/_constructors.py +106 -0
- pyfect/config/_error.py +27 -0
- pyfect/config/_leaf.py +92 -0
- pyfect/config/_scalars.py +193 -0
- pyfect/config/_schema.py +340 -0
- pyfect/config_provider/__init__.py +60 -0
- pyfect/config_provider/_dir.py +84 -0
- pyfect/config_provider/_dotenv.py +127 -0
- pyfect/config_provider/_env.py +79 -0
- pyfect/config_provider/_layers.py +80 -0
- pyfect/config_provider/_node.py +90 -0
- pyfect/config_provider/_provider.py +118 -0
- pyfect/config_provider/_unknown.py +62 -0
- pyfect/console/__init__.py +63 -0
- pyfect/console/_effects.py +134 -0
- pyfect/console/_live.py +156 -0
- pyfect/console/_service.py +49 -0
- pyfect/console/_table.py +90 -0
- pyfect/context.py +414 -0
- pyfect/cron/__init__.py +30 -0
- pyfect/cron/_model.py +183 -0
- pyfect/cron/_search.py +268 -0
- pyfect/cron/_text.py +202 -0
- pyfect/cron/_wall.py +42 -0
- pyfect/crypto.py +257 -0
- pyfect/date_time/__init__.py +77 -0
- pyfect/date_time/_calendar.py +209 -0
- pyfect/date_time/_current.py +118 -0
- pyfect/date_time/_epoch.py +22 -0
- pyfect/date_time/_iso.py +80 -0
- pyfect/date_time/_zones.py +135 -0
- pyfect/date_time/intl.py +144 -0
- pyfect/deferred.py +145 -0
- pyfect/devtools/__init__.py +24 -0
- pyfect/devtools/client.py +323 -0
- pyfect/devtools/layers.py +32 -0
- pyfect/devtools/schema.py +301 -0
- pyfect/devtools/server.py +72 -0
- pyfect/duration.py +295 -0
- pyfect/effect.py +565 -0
- pyfect/effectable.py +37 -0
- pyfect/encoding/__init__.py +62 -0
- pyfect/encoding/_archive.py +197 -0
- pyfect/encoding/_json_array_scanner.py +477 -0
- pyfect/encoding/base64.py +23 -0
- pyfect/encoding/base64_url.py +19 -0
- pyfect/encoding/encoding_error.py +17 -0
- pyfect/encoding/hex.py +28 -0
- pyfect/encoding/ini.py +188 -0
- pyfect/encoding/json_array.py +246 -0
- pyfect/encoding/ndjson.py +461 -0
- pyfect/encoding/schema_binary/__init__.py +257 -0
- pyfect/encoding/schema_binary/_channels.py +173 -0
- pyfect/encoding/schema_binary/_compile.py +584 -0
- pyfect/encoding/schema_binary/_decode.py +848 -0
- pyfect/encoding/schema_binary/_dictionary.py +90 -0
- pyfect/encoding/schema_binary/_encode.py +838 -0
- pyfect/encoding/schema_binary/_fingerprint.py +168 -0
- pyfect/encoding/schema_binary/_layout.py +350 -0
- pyfect/encoding/schema_binary/_literals.py +47 -0
- pyfect/encoding/schema_binary/_parser.py +163 -0
- pyfect/encoding/schema_binary/_reader.py +148 -0
- pyfect/encoding/schema_binary/_target.py +310 -0
- pyfect/encoding/schema_binary/_values.py +133 -0
- pyfect/encoding/schema_binary/_wire.py +253 -0
- pyfect/encoding/sse.py +476 -0
- pyfect/encoding/tar/__init__.py +396 -0
- pyfect/encoding/tar/_decoder.py +220 -0
- pyfect/encoding/tar/_encoder.py +83 -0
- pyfect/encoding/tar/_header.py +494 -0
- pyfect/encoding/tar/_model.py +82 -0
- pyfect/encoding/toml.py +375 -0
- pyfect/encoding/xml/__init__.py +222 -0
- pyfect/encoding/xml/_chars.py +119 -0
- pyfect/encoding/xml/_collector.py +106 -0
- pyfect/encoding/xml/_inputs.py +126 -0
- pyfect/encoding/xml/_model.py +114 -0
- pyfect/encoding/xml/_parser.py +694 -0
- pyfect/encoding/xml/_scanner.py +180 -0
- pyfect/encoding/xml/_writer.py +238 -0
- pyfect/encoding/yaml.py +739 -0
- pyfect/encoding/zip/__init__.py +392 -0
- pyfect/encoding/zip/_decoder.py +378 -0
- pyfect/encoding/zip/_format.py +122 -0
- pyfect/encoding/zip/_inflate.py +65 -0
- pyfect/encoding/zip/_model.py +86 -0
- pyfect/encoding/zip/_writer.py +311 -0
- pyfect/error_reporter.py +240 -0
- pyfect/errors.py +321 -0
- pyfect/eventlog/__init__.py +77 -0
- pyfect/eventlog/_conflicts.py +94 -0
- pyfect/eventlog/_crypto.py +64 -0
- pyfect/eventlog/_identity.py +26 -0
- pyfect/eventlog/_identity_derivation.py +79 -0
- pyfect/eventlog/_transferable_bytes.py +55 -0
- pyfect/eventlog/_uuid.py +33 -0
- pyfect/eventlog/event.py +115 -0
- pyfect/eventlog/event_group.py +55 -0
- pyfect/eventlog/event_journal.py +630 -0
- pyfect/eventlog/event_log.py +1039 -0
- pyfect/eventlog/event_log_encryption.py +219 -0
- pyfect/eventlog/event_log_message.py +357 -0
- pyfect/eventlog/event_log_remote.py +465 -0
- pyfect/eventlog/event_log_server.py +442 -0
- pyfect/eventlog/event_log_server_encrypted.py +322 -0
- pyfect/eventlog/event_log_server_unencrypted.py +814 -0
- pyfect/eventlog/event_log_session_auth.py +250 -0
- pyfect/eventlog/event_row.py +423 -0
- pyfect/eventlog/sql_event_journal.py +692 -0
- pyfect/eventlog/sql_event_log_server_encrypted.py +440 -0
- pyfect/eventlog/sql_event_log_server_unencrypted.py +568 -0
- pyfect/execution_plan/__init__.py +42 -0
- pyfect/execution_plan/_events.py +128 -0
- pyfect/execution_plan/_model.py +108 -0
- pyfect/execution_plan/_run.py +176 -0
- pyfect/exit.py +205 -0
- pyfect/fiber_handle.py +305 -0
- pyfect/fiber_map.py +350 -0
- pyfect/fiber_set.py +232 -0
- pyfect/file_system/__init__.py +69 -0
- pyfect/file_system/_copy.py +116 -0
- pyfect/file_system/_errors.py +32 -0
- pyfect/file_system/_file.py +177 -0
- pyfect/file_system/_live.py +351 -0
- pyfect/file_system/_model.py +72 -0
- pyfect/file_system/_noop.py +189 -0
- pyfect/file_system/_service.py +336 -0
- pyfect/file_system/_stat.py +69 -0
- pyfect/file_system/_watch.py +107 -0
- pyfect/filters.py +245 -0
- pyfect/graph/__init__.py +101 -0
- pyfect/graph/_all_pairs.py +150 -0
- pyfect/graph/_combine.py +259 -0
- pyfect/graph/_compact.py +143 -0
- pyfect/graph/_components.py +200 -0
- pyfect/graph/_cycles.py +144 -0
- pyfect/graph/_enumerate.py +168 -0
- pyfect/graph/_errors.py +51 -0
- pyfect/graph/_flow.py +164 -0
- pyfect/graph/_forest.py +109 -0
- pyfect/graph/_graph.py +269 -0
- pyfect/graph/_lowlink.py +98 -0
- pyfect/graph/_matching.py +101 -0
- pyfect/graph/_mutate.py +211 -0
- pyfect/graph/_query.py +138 -0
- pyfect/graph/_records.py +119 -0
- pyfect/graph/_render.py +109 -0
- pyfect/graph/_shortest.py +274 -0
- pyfect/graph/_snapshot.py +50 -0
- pyfect/graph/_store.py +136 -0
- pyfect/graph/_traverse.py +289 -0
- pyfect/graph/_view.py +384 -0
- pyfect/graph/_walker.py +70 -0
- pyfect/graphql/__init__.py +87 -0
- pyfect/graphql/_codec.py +117 -0
- pyfect/graphql/_http.py +309 -0
- pyfect/graphql/_schemas.py +39 -0
- pyfect/graphql/_slices.py +110 -0
- pyfect/graphql/_template.py +111 -0
- pyfect/graphql/_types.py +115 -0
- pyfect/graphql/_ws.py +395 -0
- pyfect/graphql/_ws_messages.py +120 -0
- pyfect/graphql/client.py +428 -0
- pyfect/graphql/client_error.py +285 -0
- pyfect/graphql/group.py +142 -0
- pyfect/graphql/middleware.py +98 -0
- pyfect/graphql/operation.py +409 -0
- pyfect/graphql/protocol.py +119 -0
- pyfect/graphql/resolver.py +574 -0
- pyfect/graphql/template.py +61 -0
- pyfect/hash_map.py +317 -0
- pyfect/hash_ring.py +206 -0
- pyfect/hash_set.py +163 -0
- pyfect/http/__init__.py +125 -0
- pyfect/http/_asgi_listener.py +272 -0
- pyfect/http/_authority.py +63 -0
- pyfect/http/_brotli.py +27 -0
- pyfect/http/_compression.py +52 -0
- pyfect/http/_field.py +18 -0
- pyfect/http/_foreign_path.py +27 -0
- pyfect/http/_form_data.py +34 -0
- pyfect/http/_httpx_options.py +120 -0
- pyfect/http/_in_memory.py +76 -0
- pyfect/http/_request_state.py +59 -0
- pyfect/http/_vary.py +14 -0
- pyfect/http/abort.py +65 -0
- pyfect/http/asgi/__init__.py +59 -0
- pyfect/http/asgi/_app.py +155 -0
- pyfect/http/asgi/_http.py +201 -0
- pyfect/http/asgi/_mount.py +263 -0
- pyfect/http/asgi/_scope.py +86 -0
- pyfect/http/asgi/_serve.py +72 -0
- pyfect/http/asgi/_types.py +13 -0
- pyfect/http/asgi/_web_socket.py +325 -0
- pyfect/http/body.py +437 -0
- pyfect/http/client/__init__.py +111 -0
- pyfect/http/client/_circuit_breaker.py +113 -0
- pyfect/http/client/_cookie_jar.py +120 -0
- pyfect/http/client/_make.py +252 -0
- pyfect/http/client/_rate_limit.py +423 -0
- pyfect/http/client/_redirects.py +93 -0
- pyfect/http/client/_retry.py +115 -0
- pyfect/http/client/_service.py +497 -0
- pyfect/http/cookies.py +444 -0
- pyfect/http/error.py +188 -0
- pyfect/http/etag.py +96 -0
- pyfect/http/file_like.py +49 -0
- pyfect/http/find_my_way/__init__.py +10 -0
- pyfect/http/find_my_way/_nodes.py +186 -0
- pyfect/http/find_my_way/_paths.py +43 -0
- pyfect/http/find_my_way/_query_string.py +67 -0
- pyfect/http/find_my_way/_router.py +401 -0
- pyfect/http/headers.py +343 -0
- pyfect/http/http_effect.py +198 -0
- pyfect/http/httpx_client.py +291 -0
- pyfect/http/hypercorn_server.py +122 -0
- pyfect/http/incoming_message.py +140 -0
- pyfect/http/live_server/__init__.py +191 -0
- pyfect/http/live_server/_body.py +164 -0
- pyfect/http/live_server/_exchange.py +321 -0
- pyfect/http/live_server/_head.py +194 -0
- pyfect/http/live_server/_inbound.py +156 -0
- pyfect/http/live_server/_listener.py +211 -0
- pyfect/http/live_server/_serve.py +225 -0
- pyfect/http/live_server/_timers.py +20 -0
- pyfect/http/live_server/_upgrade.py +108 -0
- pyfect/http/live_server/_websocket.py +286 -0
- pyfect/http/live_server/_ws_frames.py +242 -0
- pyfect/http/method.py +30 -0
- pyfect/http/middleware/__init__.py +61 -0
- pyfect/http/middleware/_compression.py +156 -0
- pyfect/http/middleware/_cors.py +129 -0
- pyfect/http/middleware/_decompression.py +274 -0
- pyfect/http/middleware/_forwarded.py +113 -0
- pyfect/http/middleware/_logger.py +73 -0
- pyfect/http/middleware/_search_params.py +34 -0
- pyfect/http/middleware/_tracer.py +153 -0
- pyfect/http/middleware/_types.py +16 -0
- pyfect/http/mime/__init__.py +69 -0
- pyfect/http/mime/_types.py +361 -0
- pyfect/http/multipart.py +613 -0
- pyfect/http/multipart_parser/__init__.py +348 -0
- pyfect/http/multipart_parser/_content_type.py +109 -0
- pyfect/http/multipart_parser/_headers.py +206 -0
- pyfect/http/multipart_parser/_search.py +85 -0
- pyfect/http/origin.py +146 -0
- pyfect/http/platform.py +593 -0
- pyfect/http/prometheus.py +34 -0
- pyfect/http/request.py +384 -0
- pyfect/http/response.py +474 -0
- pyfect/http/router/__init__.py +82 -0
- pyfect/http/router/_api.py +462 -0
- pyfect/http/router/_in_memory.py +76 -0
- pyfect/http/router/_markers.py +47 -0
- pyfect/http/router/_middleware.py +181 -0
- pyfect/http/router/_middleware_stack.py +51 -0
- pyfect/http/router/_provided.py +31 -0
- pyfect/http/router/_route.py +114 -0
- pyfect/http/router/_router.py +308 -0
- pyfect/http/schema.py +276 -0
- pyfect/http/server.py +199 -0
- pyfect/http/server_error.py +261 -0
- pyfect/http/server_request.py +729 -0
- pyfect/http/server_respondable.py +77 -0
- pyfect/http/server_response.py +569 -0
- pyfect/http/static_server/__init__.py +257 -0
- pyfect/http/static_server/_conditional.py +72 -0
- pyfect/http/static_server/_mime.py +55 -0
- pyfect/http/static_server/_range.py +53 -0
- pyfect/http/status.py +51 -0
- pyfect/http/template.py +161 -0
- pyfect/http/trace_context.py +91 -0
- pyfect/http/url.py +442 -0
- pyfect/http/url_params.py +304 -0
- pyfect/http/uvicorn_server.py +119 -0
- pyfect/http/web.py +171 -0
- pyfect/http/web_handler.py +463 -0
- pyfect/http/wire.py +209 -0
- pyfect/http_api/__init__.py +83 -0
- pyfect/http_api/_assets/scalar.js +8 -0
- pyfect/http_api/_assets/swagger-ui.css +3 -0
- pyfect/http_api/_assets/swagger-ui.js +4 -0
- pyfect/http_api/_client_method.py +220 -0
- pyfect/http_api/_client_payload.py +144 -0
- pyfect/http_api/_client_response.py +377 -0
- pyfect/http_api/_handlers.py +282 -0
- pyfect/http_api/_html.py +38 -0
- pyfect/http_api/_media_type.py +6 -0
- pyfect/http_api/_openapi_responses.py +164 -0
- pyfect/http_api/_openapi_schemas.py +163 -0
- pyfect/http_api/_path.py +102 -0
- pyfect/http_api/_payload.py +260 -0
- pyfect/http_api/_response.py +363 -0
- pyfect/http_api/_security.py +174 -0
- pyfect/http_api/api.py +265 -0
- pyfect/http_api/builder.py +447 -0
- pyfect/http_api/client.py +474 -0
- pyfect/http_api/endpoint.py +969 -0
- pyfect/http_api/error.py +280 -0
- pyfect/http_api/group.py +215 -0
- pyfect/http_api/middleware.py +232 -0
- pyfect/http_api/openapi.py +396 -0
- pyfect/http_api/scalar.py +143 -0
- pyfect/http_api/schema.py +713 -0
- pyfect/http_api/security.py +91 -0
- pyfect/http_api/swagger.py +69 -0
- pyfect/http_api/test.py +105 -0
- pyfect/json_patch.py +255 -0
- pyfect/json_pointer.py +100 -0
- pyfect/json_schema/__init__.py +66 -0
- pyfect/json_schema/_api.py +96 -0
- pyfect/json_schema/_converter.py +258 -0
- pyfect/json_schema/_draft04.py +198 -0
- pyfect/json_schema/_draft07.py +203 -0
- pyfect/json_schema/_keywords.py +202 -0
- pyfect/json_schema/_model.py +201 -0
- pyfect/json_schema/_openapi.py +208 -0
- pyfect/latch.py +127 -0
- pyfect/layer.py +479 -0
- pyfect/layer_map.py +279 -0
- pyfect/layer_ref.py +208 -0
- pyfect/logger/__init__.py +91 -0
- pyfect/logger/_batched.py +49 -0
- pyfect/logger/_console.py +116 -0
- pyfect/logger/_file.py +31 -0
- pyfect/logger/_formats.py +104 -0
- pyfect/logger/_layer.py +50 -0
- pyfect/logger/_level.py +53 -0
- pyfect/logger/_log.py +142 -0
- pyfect/logger/_model.py +163 -0
- pyfect/logger/_refs.py +78 -0
- pyfect/logger/_stdlib.py +54 -0
- pyfect/logger/_text.py +263 -0
- pyfect/logger/_tracer.py +35 -0
- pyfect/managed_runtime.py +393 -0
- pyfect/metric/__init__.py +119 -0
- pyfect/metric/_boundaries.py +27 -0
- pyfect/metric/_kinds.py +417 -0
- pyfect/metric/_metric.py +302 -0
- pyfect/metric/_prometheus.py +150 -0
- pyfect/metric/_refs.py +78 -0
- pyfect/metric/_runtime.py +75 -0
- pyfect/metric/_snapshot.py +97 -0
- pyfect/metric/_state.py +74 -0
- pyfect/msgspec.py +98 -0
- pyfect/mutable_hash_map.py +140 -0
- pyfect/mutable_hash_set.py +95 -0
- pyfect/net/__init__.py +18 -0
- pyfect/net/_errors.py +29 -0
- pyfect/net/address_resolver.py +179 -0
- pyfect/net/dns/__init__.py +92 -0
- pyfect/net/dns/_error.py +43 -0
- pyfect/net/dns/_records.py +335 -0
- pyfect/net/dns/_service.py +287 -0
- pyfect/net/dns/_system.py +89 -0
- pyfect/net/host.py +311 -0
- pyfect/net/ip_interface.py +202 -0
- pyfect/net/ip_network.py +250 -0
- pyfect/net/net_address/__init__.py +245 -0
- pyfect/net/net_address/_inet.py +412 -0
- pyfect/net/net_address/_ip.py +348 -0
- pyfect/net/net_address/_mac.py +119 -0
- pyfect/optic/__init__.py +50 -0
- pyfect/optic/_builtins.py +90 -0
- pyfect/optic/_data.py +97 -0
- pyfect/optic/_optic.py +422 -0
- pyfect/optic/_steps.py +151 -0
- pyfect/option.py +362 -0
- pyfect/otel/__init__.py +22 -0
- pyfect/otel/_attributes.py +67 -0
- pyfect/otel/_producer.py +322 -0
- pyfect/otel/_shutdown.py +26 -0
- pyfect/otel/_span.py +292 -0
- pyfect/otel/_wrapper.py +92 -0
- pyfect/otel/logger.py +154 -0
- pyfect/otel/metrics.py +126 -0
- pyfect/otel/resource.py +111 -0
- pyfect/otel/sdk.py +195 -0
- pyfect/otel/tracer.py +157 -0
- pyfect/partitioned_semaphore.py +211 -0
- pyfect/path.py +304 -0
- pyfect/persistence/__init__.py +77 -0
- pyfect/persistence/_columns.py +32 -0
- pyfect/persistence/_error.py +14 -0
- pyfect/persistence/_seconds.py +68 -0
- pyfect/persistence/_sql_keys.py +47 -0
- pyfect/persistence/circuit_breaker/__init__.py +120 -0
- pyfect/persistence/circuit_breaker/_breaker.py +317 -0
- pyfect/persistence/circuit_breaker/_errors.py +67 -0
- pyfect/persistence/circuit_breaker/_memory.py +243 -0
- pyfect/persistence/circuit_breaker/_redis.py +509 -0
- pyfect/persistence/circuit_breaker/_store.py +60 -0
- pyfect/persistence/circuit_breaker/_types.py +191 -0
- pyfect/persistence/key_value_store/__init__.py +51 -0
- pyfect/persistence/key_value_store/_layers.py +216 -0
- pyfect/persistence/key_value_store/_schema_store.py +91 -0
- pyfect/persistence/key_value_store/_sql.py +197 -0
- pyfect/persistence/key_value_store/_store.py +212 -0
- pyfect/persistence/persistable.py +164 -0
- pyfect/persistence/persisted_cache.py +159 -0
- pyfect/persistence/persisted_queue/__init__.py +75 -0
- pyfect/persistence/persisted_queue/_error.py +42 -0
- pyfect/persistence/persisted_queue/_mailbox.py +101 -0
- pyfect/persistence/persisted_queue/_memory.py +182 -0
- pyfect/persistence/persisted_queue/_queue.py +272 -0
- pyfect/persistence/persisted_queue/_redis.py +455 -0
- pyfect/persistence/persisted_queue/_redis_scripts.py +395 -0
- pyfect/persistence/persisted_queue/_sql.py +334 -0
- pyfect/persistence/persisted_queue/_sql_migrations.py +319 -0
- pyfect/persistence/persisted_queue/_sql_statements.py +441 -0
- pyfect/persistence/persisted_queue/_store.py +147 -0
- pyfect/persistence/persistence/__init__.py +84 -0
- pyfect/persistence/persistence/_kvs.py +135 -0
- pyfect/persistence/persistence/_memory.py +62 -0
- pyfect/persistence/persistence/_redis.py +162 -0
- pyfect/persistence/persistence/_service.py +276 -0
- pyfect/persistence/persistence/_sql.py +499 -0
- pyfect/persistence/rate_limiter/__init__.py +82 -0
- pyfect/persistence/rate_limiter/_errors.py +59 -0
- pyfect/persistence/rate_limiter/_limiter.py +325 -0
- pyfect/persistence/rate_limiter/_memory.py +217 -0
- pyfect/persistence/rate_limiter/_redis.py +485 -0
- pyfect/persistence/rate_limiter/_store.py +89 -0
- pyfect/persistence/redis/__init__.py +52 -0
- pyfect/persistence/redis/_error.py +12 -0
- pyfect/persistence/redis/_make.py +234 -0
- pyfect/persistence/redis/_script.py +78 -0
- pyfect/persistence/redis/_service.py +104 -0
- pyfect/persistence/redis_py.py +303 -0
- pyfect/persistence/user_directories.py +195 -0
- pyfect/platform.py +26 -0
- pyfect/platform_error.py +256 -0
- pyfect/pool/__init__.py +36 -0
- pyfect/pool/_pool.py +707 -0
- pyfect/pool/_state.py +161 -0
- pyfect/pool/_ttl.py +105 -0
- pyfect/pool/_waiters.py +116 -0
- pyfect/primary_key.py +35 -0
- pyfect/process/__init__.py +82 -0
- pyfect/process/_child.py +213 -0
- pyfect/process/_command.py +358 -0
- pyfect/process/_handle.py +77 -0
- pyfect/process/_live.py +455 -0
- pyfect/process/_os.py +78 -0
- pyfect/process/_pipes.py +291 -0
- pyfect/process/_spawner.py +75 -0
- pyfect/pubsub/__init__.py +33 -0
- pyfect/pubsub/_atomic.py +181 -0
- pyfect/pubsub/_hub.py +214 -0
- pyfect/pubsub/_pubsub.py +214 -0
- pyfect/pubsub/_replay.py +107 -0
- pyfect/pubsub/_subscription.py +226 -0
- pyfect/pull.py +132 -0
- pyfect/py.typed +0 -0
- pyfect/pydantic.py +188 -0
- pyfect/queue/__init__.py +33 -0
- pyfect/queue/_queue.py +525 -0
- pyfect/queue/_state.py +111 -0
- pyfect/queue/_views.py +55 -0
- pyfect/random.py +146 -0
- pyfect/rc_map.py +363 -0
- pyfect/rc_ref.py +271 -0
- pyfect/reactivity/__init__.py +53 -0
- pyfect/reactivity/_async_result_schema.py +227 -0
- pyfect/reactivity/_hydration.py +18 -0
- pyfect/reactivity/_live.py +21 -0
- pyfect/reactivity/_reactivity.py +256 -0
- pyfect/reactivity/_result_effect.py +17 -0
- pyfect/reactivity/_time.py +11 -0
- pyfect/reactivity/async_result.py +679 -0
- pyfect/reactivity/atom/__init__.py +143 -0
- pyfect/reactivity/atom/_combinators.py +223 -0
- pyfect/reactivity/atom/_constructors.py +80 -0
- pyfect/reactivity/atom/_conversions.py +79 -0
- pyfect/reactivity/atom/_effect.py +252 -0
- pyfect/reactivity/atom/_fn.py +341 -0
- pyfect/reactivity/atom/_kvs.py +101 -0
- pyfect/reactivity/atom/_optimistic.py +162 -0
- pyfect/reactivity/atom/_runtime.py +323 -0
- pyfect/reactivity/atom/_serializable.py +65 -0
- pyfect/reactivity/atom/_subscription_ref.py +102 -0
- pyfect/reactivity/atom/_swr.py +69 -0
- pyfect/reactivity/atom/_types.py +435 -0
- pyfect/reactivity/atom_http_api.py +667 -0
- pyfect/reactivity/atom_ref.py +260 -0
- pyfect/reactivity/atom_registry/__init__.py +219 -0
- pyfect/reactivity/atom_registry/_batch.py +96 -0
- pyfect/reactivity/atom_registry/_dispatcher.py +60 -0
- pyfect/reactivity/atom_registry/_lifetime.py +202 -0
- pyfect/reactivity/atom_registry/_node.py +423 -0
- pyfect/reactivity/atom_registry/_registry.py +380 -0
- pyfect/reactivity/atom_rpc.py +283 -0
- pyfect/reactivity/hydration.py +200 -0
- pyfect/redacted.py +83 -0
- pyfect/ref.py +129 -0
- pyfect/resource.py +98 -0
- pyfect/result.py +306 -0
- pyfect/rpc/__init__.py +64 -0
- pyfect/rpc/_encoded_schema.py +86 -0
- pyfect/rpc/_json_rpc.py +246 -0
- pyfect/rpc/_methods.py +177 -0
- pyfect/rpc/_rpc.py +498 -0
- pyfect/rpc/client/__init__.py +100 -0
- pyfect/rpc/client/_core.py +449 -0
- pyfect/rpc/client/_http.py +257 -0
- pyfect/rpc/client/_protocol.py +171 -0
- pyfect/rpc/client/_serialized.py +321 -0
- pyfect/rpc/client/_transports.py +328 -0
- pyfect/rpc/client/_worker.py +283 -0
- pyfect/rpc/client_error.py +35 -0
- pyfect/rpc/group.py +296 -0
- pyfect/rpc/message.py +299 -0
- pyfect/rpc/middleware.py +182 -0
- pyfect/rpc/schema.py +89 -0
- pyfect/rpc/serialization.py +366 -0
- pyfect/rpc/server/__init__.py +181 -0
- pyfect/rpc/server/_core.py +549 -0
- pyfect/rpc/server/_protocol.py +123 -0
- pyfect/rpc/server/_serialized.py +363 -0
- pyfect/rpc/server/_stdio.py +101 -0
- pyfect/rpc/server/_transports.py +427 -0
- pyfect/rpc/server/_worker.py +108 -0
- pyfect/rpc/test.py +74 -0
- pyfect/rpc/worker.py +92 -0
- pyfect/run.py +393 -0
- pyfect/schedule/__init__.py +91 -0
- pyfect/schedule/_combinators.py +168 -0
- pyfect/schedule/_constructors.py +223 -0
- pyfect/schedule/_cron.py +49 -0
- pyfect/schedule/_drive.py +191 -0
- pyfect/schedule/_model.py +405 -0
- pyfect/scheduler.py +575 -0
- pyfect/schema/__init__.py +866 -0
- pyfect/schema/_adapters.py +39 -0
- pyfect/schema/_arbitrary_constraint.py +242 -0
- pyfect/schema/_arbitrary_graph.py +325 -0
- pyfect/schema/_arbitrary_links.py +179 -0
- pyfect/schema/_arbitrary_number.py +112 -0
- pyfect/schema/_arrays.py +287 -0
- pyfect/schema/_assignable.py +118 -0
- pyfect/schema/_boolean_literals.py +31 -0
- pyfect/schema/_checks_number.py +216 -0
- pyfect/schema/_checks_order.py +140 -0
- pyfect/schema/_checks_size.py +277 -0
- pyfect/schema/_checks_string.py +241 -0
- pyfect/schema/_class.py +569 -0
- pyfect/schema/_codec_derivation.py +227 -0
- pyfect/schema/_codec_links.py +221 -0
- pyfect/schema/_codecs.py +316 -0
- pyfect/schema/_collections.py +172 -0
- pyfect/schema/_constructor_default.py +89 -0
- pyfect/schema/_data.py +440 -0
- pyfect/schema/_data_codecs.py +145 -0
- pyfect/schema/_decimal_regexp.py +243 -0
- pyfect/schema/_declare.py +68 -0
- pyfect/schema/_derive.py +292 -0
- pyfect/schema/_duration_codecs.py +27 -0
- pyfect/schema/_ecma_pattern.py +416 -0
- pyfect/schema/_error.py +26 -0
- pyfect/schema/_error_instance.py +222 -0
- pyfect/schema/_graph.py +271 -0
- pyfect/schema/_instances.py +240 -0
- pyfect/schema/_jsonschema/__init__.py +90 -0
- pyfect/schema/_jsonschema/_annotations.py +114 -0
- pyfect/schema/_jsonschema/_checks.py +253 -0
- pyfect/schema/_jsonschema/_compile.py +346 -0
- pyfect/schema/_jsonschema/_exact.py +19 -0
- pyfect/schema/_jsonschema/_merge.py +211 -0
- pyfect/schema/_jsonschema/_objects.py +231 -0
- pyfect/schema/_jsonschema/_references.py +221 -0
- pyfect/schema/_jsonschema/_template.py +69 -0
- pyfect/schema/_literals.py +147 -0
- pyfect/schema/_middleware.py +209 -0
- pyfect/schema/_net.py +522 -0
- pyfect/schema/_options.py +49 -0
- pyfect/schema/_parse.py +351 -0
- pyfect/schema/_parsed_text.py +37 -0
- pyfect/schema/_primitives.py +48 -0
- pyfect/schema/_record.py +41 -0
- pyfect/schema/_refine.py +81 -0
- pyfect/schema/_schema.py +158 -0
- pyfect/schema/_semver.py +144 -0
- pyfect/schema/_strategy/__init__.py +258 -0
- pyfect/schema/_strategy/_big_decimal.py +203 -0
- pyfect/schema/_strategy/_composites.py +119 -0
- pyfect/schema/_strategy/_leaves.py +94 -0
- pyfect/schema/_strategy/_net.py +133 -0
- pyfect/schema/_struct.py +87 -0
- pyfect/schema/_struct_keys.py +128 -0
- pyfect/schema/_tagged.py +254 -0
- pyfect/schema/_template_literal.py +172 -0
- pyfect/schema/_to_codec_array_from_single.py +115 -0
- pyfect/schema/_to_codec_go_json.py +174 -0
- pyfect/schema/_to_codec_json.py +73 -0
- pyfect/schema/_to_codec_string_tree.py +115 -0
- pyfect/schema/_to_differ_json_patch.py +44 -0
- pyfect/schema/_to_encoder_xml.py +119 -0
- pyfect/schema/_to_equivalence.py +186 -0
- pyfect/schema/_to_formatter.py +180 -0
- pyfect/schema/_to_iso.py +73 -0
- pyfect/schema/_to_strategy.py +31 -0
- pyfect/schema/_transform.py +210 -0
- pyfect/schema/_tree.py +27 -0
- pyfect/schema/_type_walk.py +53 -0
- pyfect/schema/_undefined.py +58 -0
- pyfect/schema/_value_codecs.py +84 -0
- pyfect/schema/_values.py +123 -0
- pyfect/schema/_void.py +86 -0
- pyfect/schema/ast/__init__.py +227 -0
- pyfect/schema/ast/_annotations.py +43 -0
- pyfect/schema/ast/_arrays.py +210 -0
- pyfect/schema/ast/_base.py +295 -0
- pyfect/schema/ast/_candidates.py +309 -0
- pyfect/schema/ast/_check.py +181 -0
- pyfect/schema/ast/_class.py +159 -0
- pyfect/schema/ast/_constructors.py +65 -0
- pyfect/schema/ast/_declaration.py +97 -0
- pyfect/schema/ast/_encoding.py +111 -0
- pyfect/schema/ast/_json.py +129 -0
- pyfect/schema/ast/_keywords.py +125 -0
- pyfect/schema/ast/_literal.py +157 -0
- pyfect/schema/ast/_objects.py +356 -0
- pyfect/schema/ast/_record.py +36 -0
- pyfect/schema/ast/_result.py +116 -0
- pyfect/schema/ast/_steps.py +209 -0
- pyfect/schema/ast/_suspend.py +65 -0
- pyfect/schema/ast/_template_literal.py +256 -0
- pyfect/schema/ast/_union.py +172 -0
- pyfect/schema/getter/__init__.py +136 -0
- pyfect/schema/getter/_binary.py +104 -0
- pyfect/schema/getter/_coerce.py +196 -0
- pyfect/schema/getter/_getter.py +243 -0
- pyfect/schema/getter/_make.py +151 -0
- pyfect/schema/getter/_text.py +141 -0
- pyfect/schema/getter/_tree_record.py +170 -0
- pyfect/schema/issue.py +420 -0
- pyfect/schema/model/__init__.py +120 -0
- pyfect/schema/model/_class.py +245 -0
- pyfect/schema/model/_dates.py +103 -0
- pyfect/schema/model/_fields.py +77 -0
- pyfect/schema/model/_toolkit.py +114 -0
- pyfect/schema/model/_uuid.py +69 -0
- pyfect/schema/representation/__init__.py +424 -0
- pyfect/schema/representation/_builtin_revivers.py +331 -0
- pyfect/schema/representation/_code.py +106 -0
- pyfect/schema/representation/_code_builtins.py +281 -0
- pyfect/schema/representation/_code_document.py +563 -0
- pyfect/schema/representation/_code_sort.py +111 -0
- pyfect/schema/representation/_from.py +278 -0
- pyfect/schema/representation/_import/__init__.py +78 -0
- pyfect/schema/representation/_import/_finalize.py +121 -0
- pyfect/schema/representation/_import/_intersect.py +467 -0
- pyfect/schema/representation/_import/_js_order.py +66 -0
- pyfect/schema/representation/_import/_keywords.py +224 -0
- pyfect/schema/representation/_import/_nodes.py +199 -0
- pyfect/schema/representation/_import/_translate.py +455 -0
- pyfect/schema/representation/_json.py +520 -0
- pyfect/schema/representation/_json_schema.py +178 -0
- pyfect/schema/representation/_model.py +284 -0
- pyfect/schema/representation/_revivers.py +89 -0
- pyfect/schema/representation/_to.py +249 -0
- pyfect/schema/transformation/__init__.py +99 -0
- pyfect/schema/transformation/_builtins.py +314 -0
- pyfect/schema/transformation/_durations.py +150 -0
- pyfect/schema/transformation/_transformation.py +177 -0
- pyfect/schema/variant_schema/__init__.py +69 -0
- pyfect/schema/variant_schema/_class.py +188 -0
- pyfect/schema/variant_schema/_defaults.py +30 -0
- pyfect/schema/variant_schema/_field.py +32 -0
- pyfect/schema/variant_schema/_struct.py +130 -0
- pyfect/schema/variant_schema/_toolkit.py +160 -0
- pyfect/scope.py +374 -0
- pyfect/scoped_ref.py +124 -0
- pyfect/semaphore.py +276 -0
- pyfect/semver.py +403 -0
- pyfect/semver_range.py +420 -0
- pyfect/sink/__init__.py +131 -0
- pyfect/sink/_combinators.py +151 -0
- pyfect/sink/_constructors.py +187 -0
- pyfect/sink/_context.py +87 -0
- pyfect/sink/_folds.py +336 -0
- pyfect/sink/_for_each.py +87 -0
- pyfect/sink/_sink.py +265 -0
- pyfect/sink/_steps.py +34 -0
- pyfect/sink/_taking.py +183 -0
- pyfect/socket/__init__.py +146 -0
- pyfect/socket/_accepted.py +65 -0
- pyfect/socket/_connection.py +384 -0
- pyfect/socket/_errors.py +135 -0
- pyfect/socket/_loop.py +66 -0
- pyfect/socket/_net.py +281 -0
- pyfect/socket/_socket.py +245 -0
- pyfect/socket/_tls.py +88 -0
- pyfect/socket/_tls_session.py +117 -0
- pyfect/socket/_web_socket.py +555 -0
- pyfect/socket/datagram/__init__.py +110 -0
- pyfect/socket/datagram/_core.py +460 -0
- pyfect/socket/datagram/_errors.py +102 -0
- pyfect/socket/datagram/_live.py +675 -0
- pyfect/socket/datagram/_model.py +217 -0
- pyfect/socket/server.py +258 -0
- pyfect/socket/ws.py +484 -0
- pyfect/sql/__init__.py +60 -0
- pyfect/sql/_loop.py +134 -0
- pyfect/sql/clickhouse/__init__.py +74 -0
- pyfect/sql/clickhouse/_connection.py +237 -0
- pyfect/sql/clickhouse/_rows.py +87 -0
- pyfect/sql/clickhouse/client.py +322 -0
- pyfect/sql/clickhouse/config.py +241 -0
- pyfect/sql/clickhouse/driver.py +434 -0
- pyfect/sql/clickhouse/error.py +106 -0
- pyfect/sql/clickhouse/migrator.py +47 -0
- pyfect/sql/clickhouse/params.py +168 -0
- pyfect/sql/client/__init__.py +35 -0
- pyfect/sql/client/_client.py +309 -0
- pyfect/sql/client/_sqlite_acquirers.py +130 -0
- pyfect/sql/client/_transaction.py +410 -0
- pyfect/sql/connection.py +87 -0
- pyfect/sql/d1/__init__.py +48 -0
- pyfect/sql/d1/api.py +270 -0
- pyfect/sql/d1/client.py +344 -0
- pyfect/sql/d1/config.py +55 -0
- pyfect/sql/error.py +311 -0
- pyfect/sql/libsql/__init__.py +58 -0
- pyfect/sql/libsql/_connection.py +110 -0
- pyfect/sql/libsql/_hrana.py +258 -0
- pyfect/sql/libsql/_local.py +251 -0
- pyfect/sql/libsql/_targets.py +28 -0
- pyfect/sql/libsql/_values.py +46 -0
- pyfect/sql/libsql/client.py +225 -0
- pyfect/sql/libsql/config.py +170 -0
- pyfect/sql/libsql/migrator.py +43 -0
- pyfect/sql/libsql/sdk.py +123 -0
- pyfect/sql/migrator.py +434 -0
- pyfect/sql/model.py +324 -0
- pyfect/sql/mssql/__init__.py +79 -0
- pyfect/sql/mssql/_connection.py +169 -0
- pyfect/sql/mssql/_driver.py +103 -0
- pyfect/sql/mssql/_names.py +9 -0
- pyfect/sql/mssql/_pool.py +125 -0
- pyfect/sql/mssql/_tds.py +447 -0
- pyfect/sql/mssql/_tds_params.py +155 -0
- pyfect/sql/mssql/_worker.py +155 -0
- pyfect/sql/mssql/client.py +344 -0
- pyfect/sql/mssql/config.py +118 -0
- pyfect/sql/mssql/error.py +111 -0
- pyfect/sql/mssql/migrator.py +43 -0
- pyfect/sql/mssql/parameter.py +44 -0
- pyfect/sql/mssql/procedure.py +119 -0
- pyfect/sql/mssql/types.py +137 -0
- pyfect/sql/mysql/__init__.py +60 -0
- pyfect/sql/mysql/_asyncmy.py +168 -0
- pyfect/sql/mysql/_bind.py +76 -0
- pyfect/sql/mysql/_connection.py +156 -0
- pyfect/sql/mysql/_pool.py +63 -0
- pyfect/sql/mysql/_session.py +262 -0
- pyfect/sql/mysql/client.py +244 -0
- pyfect/sql/mysql/config.py +108 -0
- pyfect/sql/mysql/error.py +104 -0
- pyfect/sql/mysql/migrator.py +44 -0
- pyfect/sql/pg/__init__.py +82 -0
- pyfect/sql/pg/_resolve.py +284 -0
- pyfect/sql/pg/_session.py +380 -0
- pyfect/sql/pg/client.py +398 -0
- pyfect/sql/pg/config.py +142 -0
- pyfect/sql/pg/connection.py +585 -0
- pyfect/sql/pg/error.py +131 -0
- pyfect/sql/pg/migrator.py +139 -0
- pyfect/sql/pg/pool.py +265 -0
- pyfect/sql/resolver.py +294 -0
- pyfect/sql/result.py +24 -0
- pyfect/sql/schema.py +116 -0
- pyfect/sql/sqlite/__init__.py +26 -0
- pyfect/sql/sqlite/_connection.py +230 -0
- pyfect/sql/sqlite/_worker.py +71 -0
- pyfect/sql/sqlite/client.py +248 -0
- pyfect/sql/sqlite/migrator.py +43 -0
- pyfect/sql/statement/__init__.py +144 -0
- pyfect/sql/statement/_compiler.py +384 -0
- pyfect/sql/statement/_segments.py +487 -0
- pyfect/sql/statement/_statement.py +526 -0
- pyfect/sql/statement/_transforms.py +93 -0
- pyfect/sql/stream.py +88 -0
- pyfect/stdio.py +206 -0
- pyfect/stream/__init__.py +151 -0
- pyfect/stream/_async_iterable.py +129 -0
- pyfect/stream/_base.py +69 -0
- pyfect/stream/_bridge_methods.py +139 -0
- pyfect/stream/_catch.py +135 -0
- pyfect/stream/_catch_reason.py +558 -0
- pyfect/stream/_channel_methods.py +61 -0
- pyfect/stream/_chunk_methods.py +169 -0
- pyfect/stream/_chunking.py +310 -0
- pyfect/stream/_concat.py +65 -0
- pyfect/stream/_constructors.py +341 -0
- pyfect/stream/_context.py +147 -0
- pyfect/stream/_error_methods.py +254 -0
- pyfect/stream/_execution_plan.py +199 -0
- pyfect/stream/_fanout.py +154 -0
- pyfect/stream/_fanout_methods.py +183 -0
- pyfect/stream/_filter_methods.py +203 -0
- pyfect/stream/_grouping.py +168 -0
- pyfect/stream/_many.py +65 -0
- pyfect/stream/_map_methods.py +233 -0
- pyfect/stream/_mapping.py +126 -0
- pyfect/stream/_run.py +114 -0
- pyfect/stream/_run_methods.py +114 -0
- pyfect/stream/_service_methods.py +36 -0
- pyfect/stream/_sink_methods.py +151 -0
- pyfect/stream/_sinking.py +277 -0
- pyfect/stream/_sources.py +124 -0
- pyfect/stream/_stream.py +162 -0
- pyfect/stream/_taking.py +330 -0
- pyfect/stream/_text.py +43 -0
- pyfect/stream/_timing.py +294 -0
- pyfect/stream/_timing_methods.py +252 -0
- pyfect/stream/_zip_methods.py +279 -0
- pyfect/stream/_zipping.py +213 -0
- pyfect/subscription_ref.py +66 -0
- pyfect/synchronized_ref.py +38 -0
- pyfect/take.py +36 -0
- pyfect/terminal/__init__.py +41 -0
- pyfect/terminal/_keys.py +113 -0
- pyfect/terminal/_live.py +223 -0
- pyfect/terminal/_service.py +73 -0
- pyfect/testing/__init__.py +122 -0
- pyfect/testing/_assertions.py +92 -0
- pyfect/testing/_clock.py +309 -0
- pyfect/testing/_console.py +164 -0
- pyfect/testing/_crypto.py +44 -0
- pyfect/testing/_decorators.py +211 -0
- pyfect/testing/_flaky.py +34 -0
- pyfect/testing/_layers.py +153 -0
- pyfect/testing/_prop.py +255 -0
- pyfect/testing/_runners.py +84 -0
- pyfect/testing/_runtime.py +174 -0
- pyfect/testing/_schema.py +238 -0
- pyfect/testing/plugin.py +59 -0
- pyfect/tracer/__init__.py +107 -0
- pyfect/tracer/_model.py +176 -0
- pyfect/tracer/_native.py +172 -0
- pyfect/tracer/_refs.py +87 -0
- pyfect/tracer/_spans.py +269 -0
- pyfect/transaction.py +340 -0
- pyfect/trie.py +317 -0
- pyfect/tx_chunk.py +127 -0
- pyfect/tx_deferred.py +75 -0
- pyfect/tx_hash_map.py +265 -0
- pyfect/tx_hash_set.py +151 -0
- pyfect/tx_priority_queue.py +224 -0
- pyfect/tx_pubsub.py +194 -0
- pyfect/tx_queue/__init__.py +27 -0
- pyfect/tx_queue/_queue.py +359 -0
- pyfect/tx_queue/_views.py +60 -0
- pyfect/tx_reentrant_lock.py +201 -0
- pyfect/tx_ref.py +79 -0
- pyfect/tx_semaphore.py +136 -0
- pyfect/tx_subscription_ref.py +118 -0
- pyfect/workers/__init__.py +62 -0
- pyfect/workers/_frames.py +82 -0
- pyfect/workers/_mailbox.py +51 -0
- pyfect/workers/_port.py +106 -0
- pyfect/workers/_process.py +155 -0
- pyfect/workers/_thread.py +100 -0
- pyfect/workers/python_worker.py +133 -0
- pyfect/workers/python_worker_runner.py +112 -0
- pyfect/workers/transferable.py +103 -0
- pyfect/workers/worker.py +273 -0
- pyfect/workers/worker_error.py +86 -0
- pyfect/workers/worker_runner.py +85 -0
- pyfect/workflow/__init__.py +78 -0
- pyfect/workflow/_crypto.py +23 -0
- pyfect/workflow/_encoded.py +381 -0
- pyfect/workflow/_memory.py +424 -0
- pyfect/workflow/_result.py +43 -0
- pyfect/workflow/_services.py +241 -0
- pyfect/workflow/_suspension.py +153 -0
- pyfect/workflow/activity.py +427 -0
- pyfect/workflow/durable_clock.py +72 -0
- pyfect/workflow/durable_deferred.py +403 -0
- pyfect/workflow/durable_queue.py +259 -0
- pyfect/workflow/workflow.py +509 -0
- pyfect/workflow/workflow_engine.py +42 -0
- pyfect/workflow/workflow_proxy.py +161 -0
- pyfect/workflow/workflow_proxy_server.py +146 -0
- pyfect_dev-0.1.0.dist-info/METADATA +296 -0
- pyfect_dev-0.1.0.dist-info/RECORD +1265 -0
- pyfect_dev-0.1.0.dist-info/WHEEL +4 -0
- pyfect_dev-0.1.0.dist-info/entry_points.txt +3 -0
- pyfect_dev-0.1.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,1445 @@
|
|
|
1
|
+
"""Effect's generated ``OpenRouterClient``: a method per operation of the
|
|
2
|
+
OpenRouter API, generated from Effect's ``Generated.ts`` by
|
|
3
|
+
``scripts/gen_ai_schemas.py``; do not edit.
|
|
4
|
+
|
|
5
|
+
A JSON operation gives its decoded body (with ``include_response=True``,
|
|
6
|
+
the body and the response); a documented error status fails with
|
|
7
|
+
``OpenRouterClientError`` (``tag`` names the operation and status,
|
|
8
|
+
``cause`` is the decoded body). ``...Sse`` operations stream the decoded
|
|
9
|
+
events, ``...Stream`` ones the body's bytes.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
# pyright: reportPrivateUsage=false
|
|
13
|
+
from __future__ import annotations
|
|
14
|
+
|
|
15
|
+
import typing as _t
|
|
16
|
+
|
|
17
|
+
from pyfect import schema as _S
|
|
18
|
+
from pyfect._core import Effect as _Effect
|
|
19
|
+
from pyfect.ai import _generated_client as _c
|
|
20
|
+
from pyfect.encoding import sse as _sse
|
|
21
|
+
from pyfect.http.client import HttpClientService as _HttpClientService
|
|
22
|
+
from pyfect.http.error import HttpClientError as _HttpClientError
|
|
23
|
+
from pyfect.http.response import HttpClientResponse as _HttpClientResponse
|
|
24
|
+
from pyfect.stream import Stream as _Stream
|
|
25
|
+
from pyfect.ai.openrouter.generated import types as _T
|
|
26
|
+
from pyfect.ai.openrouter.generated import (
|
|
27
|
+
BulkAddWorkspaceMembers200,
|
|
28
|
+
BulkAddWorkspaceMembers400,
|
|
29
|
+
BulkAddWorkspaceMembers401,
|
|
30
|
+
BulkAddWorkspaceMembers403,
|
|
31
|
+
BulkAddWorkspaceMembers404,
|
|
32
|
+
BulkAddWorkspaceMembers500,
|
|
33
|
+
BulkAssignKeysToGuardrail200,
|
|
34
|
+
BulkAssignKeysToGuardrail400,
|
|
35
|
+
BulkAssignKeysToGuardrail401,
|
|
36
|
+
BulkAssignKeysToGuardrail404,
|
|
37
|
+
BulkAssignKeysToGuardrail500,
|
|
38
|
+
BulkAssignMembersToGuardrail200,
|
|
39
|
+
BulkAssignMembersToGuardrail400,
|
|
40
|
+
BulkAssignMembersToGuardrail401,
|
|
41
|
+
BulkAssignMembersToGuardrail404,
|
|
42
|
+
BulkAssignMembersToGuardrail500,
|
|
43
|
+
BulkRemoveWorkspaceMembers200,
|
|
44
|
+
BulkRemoveWorkspaceMembers400,
|
|
45
|
+
BulkRemoveWorkspaceMembers401,
|
|
46
|
+
BulkRemoveWorkspaceMembers403,
|
|
47
|
+
BulkRemoveWorkspaceMembers404,
|
|
48
|
+
BulkRemoveWorkspaceMembers500,
|
|
49
|
+
BulkUnassignKeysFromGuardrail200,
|
|
50
|
+
BulkUnassignKeysFromGuardrail400,
|
|
51
|
+
BulkUnassignKeysFromGuardrail401,
|
|
52
|
+
BulkUnassignKeysFromGuardrail404,
|
|
53
|
+
BulkUnassignKeysFromGuardrail500,
|
|
54
|
+
BulkUnassignMembersFromGuardrail200,
|
|
55
|
+
BulkUnassignMembersFromGuardrail400,
|
|
56
|
+
BulkUnassignMembersFromGuardrail401,
|
|
57
|
+
BulkUnassignMembersFromGuardrail404,
|
|
58
|
+
BulkUnassignMembersFromGuardrail500,
|
|
59
|
+
CreateAudioSpeech400,
|
|
60
|
+
CreateAudioSpeech401,
|
|
61
|
+
CreateAudioSpeech402,
|
|
62
|
+
CreateAudioSpeech404,
|
|
63
|
+
CreateAudioSpeech429,
|
|
64
|
+
CreateAudioSpeech500,
|
|
65
|
+
CreateAudioSpeech502,
|
|
66
|
+
CreateAudioSpeech503,
|
|
67
|
+
CreateAudioSpeech524,
|
|
68
|
+
CreateAudioSpeech529,
|
|
69
|
+
CreateAudioTranscriptions200,
|
|
70
|
+
CreateAudioTranscriptions400,
|
|
71
|
+
CreateAudioTranscriptions401,
|
|
72
|
+
CreateAudioTranscriptions402,
|
|
73
|
+
CreateAudioTranscriptions404,
|
|
74
|
+
CreateAudioTranscriptions429,
|
|
75
|
+
CreateAudioTranscriptions500,
|
|
76
|
+
CreateAudioTranscriptions502,
|
|
77
|
+
CreateAudioTranscriptions503,
|
|
78
|
+
CreateAudioTranscriptions524,
|
|
79
|
+
CreateAudioTranscriptions529,
|
|
80
|
+
CreateAuthKeysCode200,
|
|
81
|
+
CreateAuthKeysCode400,
|
|
82
|
+
CreateAuthKeysCode401,
|
|
83
|
+
CreateAuthKeysCode403,
|
|
84
|
+
CreateAuthKeysCode409,
|
|
85
|
+
CreateAuthKeysCode500,
|
|
86
|
+
CreateBYOKKey201,
|
|
87
|
+
CreateBYOKKey400,
|
|
88
|
+
CreateBYOKKey401,
|
|
89
|
+
CreateBYOKKey403,
|
|
90
|
+
CreateBYOKKey500,
|
|
91
|
+
CreateCoinbaseCharge410,
|
|
92
|
+
CreateEmbeddings200,
|
|
93
|
+
CreateEmbeddings200Sse,
|
|
94
|
+
CreateEmbeddings400,
|
|
95
|
+
CreateEmbeddings401,
|
|
96
|
+
CreateEmbeddings402,
|
|
97
|
+
CreateEmbeddings404,
|
|
98
|
+
CreateEmbeddings429,
|
|
99
|
+
CreateEmbeddings500,
|
|
100
|
+
CreateEmbeddings502,
|
|
101
|
+
CreateEmbeddings503,
|
|
102
|
+
CreateEmbeddings524,
|
|
103
|
+
CreateEmbeddings529,
|
|
104
|
+
CreateGuardrail201,
|
|
105
|
+
CreateGuardrail400,
|
|
106
|
+
CreateGuardrail401,
|
|
107
|
+
CreateGuardrail403,
|
|
108
|
+
CreateGuardrail500,
|
|
109
|
+
CreateImages200,
|
|
110
|
+
CreateImages200Sse,
|
|
111
|
+
CreateImages400,
|
|
112
|
+
CreateImages401,
|
|
113
|
+
CreateImages402,
|
|
114
|
+
CreateImages403,
|
|
115
|
+
CreateImages404,
|
|
116
|
+
CreateImages413,
|
|
117
|
+
CreateImages429,
|
|
118
|
+
CreateImages500,
|
|
119
|
+
CreateImages502,
|
|
120
|
+
CreateImages524,
|
|
121
|
+
CreateImages529,
|
|
122
|
+
CreateKeys201,
|
|
123
|
+
CreateKeys400,
|
|
124
|
+
CreateKeys401,
|
|
125
|
+
CreateKeys403,
|
|
126
|
+
CreateKeys429,
|
|
127
|
+
CreateKeys500,
|
|
128
|
+
CreateMessages200,
|
|
129
|
+
CreateMessages200Sse,
|
|
130
|
+
CreateMessages400,
|
|
131
|
+
CreateMessages401,
|
|
132
|
+
CreateMessages403,
|
|
133
|
+
CreateMessages404,
|
|
134
|
+
CreateMessages429,
|
|
135
|
+
CreateMessages500,
|
|
136
|
+
CreateMessages503,
|
|
137
|
+
CreateMessages529,
|
|
138
|
+
CreateObservabilityDestination201,
|
|
139
|
+
CreateObservabilityDestination400,
|
|
140
|
+
CreateObservabilityDestination401,
|
|
141
|
+
CreateObservabilityDestination403,
|
|
142
|
+
CreateObservabilityDestination409,
|
|
143
|
+
CreateObservabilityDestination500,
|
|
144
|
+
CreatePresetsChatCompletions200,
|
|
145
|
+
CreatePresetsChatCompletions400,
|
|
146
|
+
CreatePresetsChatCompletions401,
|
|
147
|
+
CreatePresetsChatCompletions403,
|
|
148
|
+
CreatePresetsChatCompletions404,
|
|
149
|
+
CreatePresetsChatCompletions409,
|
|
150
|
+
CreatePresetsChatCompletions500,
|
|
151
|
+
CreatePresetsMessages200,
|
|
152
|
+
CreatePresetsMessages400,
|
|
153
|
+
CreatePresetsMessages401,
|
|
154
|
+
CreatePresetsMessages403,
|
|
155
|
+
CreatePresetsMessages404,
|
|
156
|
+
CreatePresetsMessages409,
|
|
157
|
+
CreatePresetsMessages500,
|
|
158
|
+
CreatePresetsResponses200,
|
|
159
|
+
CreatePresetsResponses400,
|
|
160
|
+
CreatePresetsResponses401,
|
|
161
|
+
CreatePresetsResponses403,
|
|
162
|
+
CreatePresetsResponses404,
|
|
163
|
+
CreatePresetsResponses409,
|
|
164
|
+
CreatePresetsResponses500,
|
|
165
|
+
CreateRerank200,
|
|
166
|
+
CreateRerank200Sse,
|
|
167
|
+
CreateRerank400,
|
|
168
|
+
CreateRerank401,
|
|
169
|
+
CreateRerank402,
|
|
170
|
+
CreateRerank404,
|
|
171
|
+
CreateRerank429,
|
|
172
|
+
CreateRerank500,
|
|
173
|
+
CreateRerank502,
|
|
174
|
+
CreateRerank503,
|
|
175
|
+
CreateRerank524,
|
|
176
|
+
CreateRerank529,
|
|
177
|
+
CreateResponses200,
|
|
178
|
+
CreateResponses200Sse,
|
|
179
|
+
CreateResponses400,
|
|
180
|
+
CreateResponses401,
|
|
181
|
+
CreateResponses402,
|
|
182
|
+
CreateResponses403,
|
|
183
|
+
CreateResponses404,
|
|
184
|
+
CreateResponses408,
|
|
185
|
+
CreateResponses413,
|
|
186
|
+
CreateResponses422,
|
|
187
|
+
CreateResponses429,
|
|
188
|
+
CreateResponses500,
|
|
189
|
+
CreateResponses502,
|
|
190
|
+
CreateResponses503,
|
|
191
|
+
CreateResponses524,
|
|
192
|
+
CreateResponses529,
|
|
193
|
+
CreateVideos202,
|
|
194
|
+
CreateVideos400,
|
|
195
|
+
CreateVideos401,
|
|
196
|
+
CreateVideos402,
|
|
197
|
+
CreateVideos404,
|
|
198
|
+
CreateVideos429,
|
|
199
|
+
CreateVideos500,
|
|
200
|
+
CreateWorkspace201,
|
|
201
|
+
CreateWorkspace400,
|
|
202
|
+
CreateWorkspace401,
|
|
203
|
+
CreateWorkspace403,
|
|
204
|
+
CreateWorkspace500,
|
|
205
|
+
DeleteBYOKKey200,
|
|
206
|
+
DeleteBYOKKey401,
|
|
207
|
+
DeleteBYOKKey404,
|
|
208
|
+
DeleteBYOKKey500,
|
|
209
|
+
DeleteFile200,
|
|
210
|
+
DeleteFile401,
|
|
211
|
+
DeleteFile404,
|
|
212
|
+
DeleteFile429,
|
|
213
|
+
DeleteFile500,
|
|
214
|
+
DeleteGuardrail200,
|
|
215
|
+
DeleteGuardrail401,
|
|
216
|
+
DeleteGuardrail404,
|
|
217
|
+
DeleteGuardrail500,
|
|
218
|
+
DeleteKeys200,
|
|
219
|
+
DeleteKeys401,
|
|
220
|
+
DeleteKeys404,
|
|
221
|
+
DeleteKeys429,
|
|
222
|
+
DeleteKeys500,
|
|
223
|
+
DeleteObservabilityDestination200,
|
|
224
|
+
DeleteObservabilityDestination401,
|
|
225
|
+
DeleteObservabilityDestination404,
|
|
226
|
+
DeleteObservabilityDestination500,
|
|
227
|
+
DeleteWorkspace200,
|
|
228
|
+
DeleteWorkspace400,
|
|
229
|
+
DeleteWorkspace401,
|
|
230
|
+
DeleteWorkspace403,
|
|
231
|
+
DeleteWorkspace404,
|
|
232
|
+
DeleteWorkspace500,
|
|
233
|
+
DeleteWorkspaceBudget200,
|
|
234
|
+
DeleteWorkspaceBudget401,
|
|
235
|
+
DeleteWorkspaceBudget404,
|
|
236
|
+
DeleteWorkspaceBudget500,
|
|
237
|
+
DownloadFileContent400,
|
|
238
|
+
DownloadFileContent401,
|
|
239
|
+
DownloadFileContent404,
|
|
240
|
+
DownloadFileContent429,
|
|
241
|
+
DownloadFileContent500,
|
|
242
|
+
ExchangeAuthCodeForAPIKey200,
|
|
243
|
+
ExchangeAuthCodeForAPIKey400,
|
|
244
|
+
ExchangeAuthCodeForAPIKey403,
|
|
245
|
+
ExchangeAuthCodeForAPIKey500,
|
|
246
|
+
GetAnalyticsMeta200,
|
|
247
|
+
GetAnalyticsMeta401,
|
|
248
|
+
GetAnalyticsMeta403,
|
|
249
|
+
GetAnalyticsMeta500,
|
|
250
|
+
GetAppRankings200,
|
|
251
|
+
GetAppRankings400,
|
|
252
|
+
GetAppRankings401,
|
|
253
|
+
GetAppRankings429,
|
|
254
|
+
GetAppRankings500,
|
|
255
|
+
GetBYOKKey200,
|
|
256
|
+
GetBYOKKey401,
|
|
257
|
+
GetBYOKKey404,
|
|
258
|
+
GetBYOKKey500,
|
|
259
|
+
GetBenchmarks200,
|
|
260
|
+
GetBenchmarks400,
|
|
261
|
+
GetBenchmarks401,
|
|
262
|
+
GetBenchmarks429,
|
|
263
|
+
GetBenchmarks500,
|
|
264
|
+
GetCredits200,
|
|
265
|
+
GetCredits401,
|
|
266
|
+
GetCredits403,
|
|
267
|
+
GetCredits500,
|
|
268
|
+
GetCurrentKey200,
|
|
269
|
+
GetCurrentKey401,
|
|
270
|
+
GetCurrentKey500,
|
|
271
|
+
GetFileMetadata200,
|
|
272
|
+
GetFileMetadata401,
|
|
273
|
+
GetFileMetadata404,
|
|
274
|
+
GetFileMetadata429,
|
|
275
|
+
GetFileMetadata500,
|
|
276
|
+
GetGeneration200,
|
|
277
|
+
GetGeneration401,
|
|
278
|
+
GetGeneration402,
|
|
279
|
+
GetGeneration404,
|
|
280
|
+
GetGeneration429,
|
|
281
|
+
GetGeneration500,
|
|
282
|
+
GetGeneration502,
|
|
283
|
+
GetGeneration524,
|
|
284
|
+
GetGeneration529,
|
|
285
|
+
GetGuardrail200,
|
|
286
|
+
GetGuardrail401,
|
|
287
|
+
GetGuardrail404,
|
|
288
|
+
GetGuardrail500,
|
|
289
|
+
GetKey200,
|
|
290
|
+
GetKey401,
|
|
291
|
+
GetKey404,
|
|
292
|
+
GetKey429,
|
|
293
|
+
GetKey500,
|
|
294
|
+
GetModel200,
|
|
295
|
+
GetModel403,
|
|
296
|
+
GetModel404,
|
|
297
|
+
GetModel500,
|
|
298
|
+
GetModels200,
|
|
299
|
+
GetModels400,
|
|
300
|
+
GetModels403,
|
|
301
|
+
GetModels500,
|
|
302
|
+
GetObservabilityDestination200,
|
|
303
|
+
GetObservabilityDestination401,
|
|
304
|
+
GetObservabilityDestination404,
|
|
305
|
+
GetObservabilityDestination500,
|
|
306
|
+
GetPreset200,
|
|
307
|
+
GetPreset400,
|
|
308
|
+
GetPreset401,
|
|
309
|
+
GetPreset404,
|
|
310
|
+
GetPreset500,
|
|
311
|
+
GetPresetVersion200,
|
|
312
|
+
GetPresetVersion400,
|
|
313
|
+
GetPresetVersion401,
|
|
314
|
+
GetPresetVersion404,
|
|
315
|
+
GetPresetVersion500,
|
|
316
|
+
GetRankingsDaily200,
|
|
317
|
+
GetRankingsDaily400,
|
|
318
|
+
GetRankingsDaily401,
|
|
319
|
+
GetRankingsDaily429,
|
|
320
|
+
GetRankingsDaily500,
|
|
321
|
+
GetTaskClassifications200,
|
|
322
|
+
GetTaskClassifications400,
|
|
323
|
+
GetTaskClassifications401,
|
|
324
|
+
GetTaskClassifications429,
|
|
325
|
+
GetTaskClassifications500,
|
|
326
|
+
GetUserActivity200,
|
|
327
|
+
GetUserActivity400,
|
|
328
|
+
GetUserActivity401,
|
|
329
|
+
GetUserActivity403,
|
|
330
|
+
GetUserActivity404,
|
|
331
|
+
GetUserActivity500,
|
|
332
|
+
GetVideos200,
|
|
333
|
+
GetVideos401,
|
|
334
|
+
GetVideos404,
|
|
335
|
+
GetVideos500,
|
|
336
|
+
GetWorkspace200,
|
|
337
|
+
GetWorkspace401,
|
|
338
|
+
GetWorkspace404,
|
|
339
|
+
GetWorkspace500,
|
|
340
|
+
List200,
|
|
341
|
+
List400,
|
|
342
|
+
List401,
|
|
343
|
+
List429,
|
|
344
|
+
List500,
|
|
345
|
+
ListBYOKKeys200,
|
|
346
|
+
ListBYOKKeys400,
|
|
347
|
+
ListBYOKKeys401,
|
|
348
|
+
ListBYOKKeys500,
|
|
349
|
+
ListEmbeddingsModels200,
|
|
350
|
+
ListEmbeddingsModels400,
|
|
351
|
+
ListEmbeddingsModels500,
|
|
352
|
+
ListEndpoints200,
|
|
353
|
+
ListEndpoints403,
|
|
354
|
+
ListEndpoints404,
|
|
355
|
+
ListEndpoints500,
|
|
356
|
+
ListEndpointsZdr200,
|
|
357
|
+
ListEndpointsZdr403,
|
|
358
|
+
ListEndpointsZdr500,
|
|
359
|
+
ListFiles200,
|
|
360
|
+
ListFiles400,
|
|
361
|
+
ListFiles401,
|
|
362
|
+
ListFiles429,
|
|
363
|
+
ListFiles500,
|
|
364
|
+
ListGenerationContent200,
|
|
365
|
+
ListGenerationContent401,
|
|
366
|
+
ListGenerationContent403,
|
|
367
|
+
ListGenerationContent404,
|
|
368
|
+
ListGenerationContent429,
|
|
369
|
+
ListGenerationContent500,
|
|
370
|
+
ListGenerationContent502,
|
|
371
|
+
ListGenerationContent524,
|
|
372
|
+
ListGenerationContent529,
|
|
373
|
+
ListGuardrailKeyAssignments200,
|
|
374
|
+
ListGuardrailKeyAssignments401,
|
|
375
|
+
ListGuardrailKeyAssignments404,
|
|
376
|
+
ListGuardrailKeyAssignments500,
|
|
377
|
+
ListGuardrailMemberAssignments200,
|
|
378
|
+
ListGuardrailMemberAssignments401,
|
|
379
|
+
ListGuardrailMemberAssignments404,
|
|
380
|
+
ListGuardrailMemberAssignments500,
|
|
381
|
+
ListGuardrails200,
|
|
382
|
+
ListGuardrails400,
|
|
383
|
+
ListGuardrails401,
|
|
384
|
+
ListGuardrails500,
|
|
385
|
+
ListImageModelEndpoints200,
|
|
386
|
+
ListImageModelEndpoints404,
|
|
387
|
+
ListImageModelEndpoints500,
|
|
388
|
+
ListImageModels200,
|
|
389
|
+
ListImageModels500,
|
|
390
|
+
ListKeyAssignments200,
|
|
391
|
+
ListKeyAssignments401,
|
|
392
|
+
ListKeyAssignments500,
|
|
393
|
+
ListMemberAssignments200,
|
|
394
|
+
ListMemberAssignments401,
|
|
395
|
+
ListMemberAssignments500,
|
|
396
|
+
ListModelsCount200,
|
|
397
|
+
ListModelsCount400,
|
|
398
|
+
ListModelsCount403,
|
|
399
|
+
ListModelsCount500,
|
|
400
|
+
ListModelsUser200,
|
|
401
|
+
ListModelsUser401,
|
|
402
|
+
ListModelsUser403,
|
|
403
|
+
ListModelsUser404,
|
|
404
|
+
ListModelsUser500,
|
|
405
|
+
ListObservabilityDestinations200,
|
|
406
|
+
ListObservabilityDestinations400,
|
|
407
|
+
ListObservabilityDestinations401,
|
|
408
|
+
ListObservabilityDestinations500,
|
|
409
|
+
ListOrganizationMembers200,
|
|
410
|
+
ListOrganizationMembers401,
|
|
411
|
+
ListOrganizationMembers404,
|
|
412
|
+
ListOrganizationMembers500,
|
|
413
|
+
ListPresetVersions200,
|
|
414
|
+
ListPresetVersions400,
|
|
415
|
+
ListPresetVersions401,
|
|
416
|
+
ListPresetVersions404,
|
|
417
|
+
ListPresetVersions500,
|
|
418
|
+
ListPresets200,
|
|
419
|
+
ListPresets400,
|
|
420
|
+
ListPresets401,
|
|
421
|
+
ListPresets500,
|
|
422
|
+
ListProviders200,
|
|
423
|
+
ListProviders500,
|
|
424
|
+
ListVideosContent400,
|
|
425
|
+
ListVideosContent401,
|
|
426
|
+
ListVideosContent404,
|
|
427
|
+
ListVideosContent500,
|
|
428
|
+
ListVideosContent502,
|
|
429
|
+
ListVideosModels200,
|
|
430
|
+
ListVideosModels400,
|
|
431
|
+
ListVideosModels500,
|
|
432
|
+
ListWorkspaceBudgets200,
|
|
433
|
+
ListWorkspaceBudgets401,
|
|
434
|
+
ListWorkspaceBudgets404,
|
|
435
|
+
ListWorkspaceBudgets500,
|
|
436
|
+
ListWorkspaceMembers200,
|
|
437
|
+
ListWorkspaceMembers401,
|
|
438
|
+
ListWorkspaceMembers403,
|
|
439
|
+
ListWorkspaceMembers404,
|
|
440
|
+
ListWorkspaceMembers500,
|
|
441
|
+
ListWorkspaces200,
|
|
442
|
+
ListWorkspaces401,
|
|
443
|
+
ListWorkspaces500,
|
|
444
|
+
QueryAnalytics200,
|
|
445
|
+
QueryAnalytics400,
|
|
446
|
+
QueryAnalytics401,
|
|
447
|
+
QueryAnalytics403,
|
|
448
|
+
QueryAnalytics408,
|
|
449
|
+
QueryAnalytics500,
|
|
450
|
+
SendChatCompletionRequest200,
|
|
451
|
+
SendChatCompletionRequest200Sse,
|
|
452
|
+
SendChatCompletionRequest400,
|
|
453
|
+
SendChatCompletionRequest401,
|
|
454
|
+
SendChatCompletionRequest402,
|
|
455
|
+
SendChatCompletionRequest403,
|
|
456
|
+
SendChatCompletionRequest404,
|
|
457
|
+
SendChatCompletionRequest408,
|
|
458
|
+
SendChatCompletionRequest413,
|
|
459
|
+
SendChatCompletionRequest422,
|
|
460
|
+
SendChatCompletionRequest429,
|
|
461
|
+
SendChatCompletionRequest500,
|
|
462
|
+
SendChatCompletionRequest502,
|
|
463
|
+
SendChatCompletionRequest503,
|
|
464
|
+
SendChatCompletionRequest524,
|
|
465
|
+
SendChatCompletionRequest529,
|
|
466
|
+
SubmitGenerationFeedback200,
|
|
467
|
+
SubmitGenerationFeedback400,
|
|
468
|
+
SubmitGenerationFeedback401,
|
|
469
|
+
SubmitGenerationFeedback404,
|
|
470
|
+
SubmitGenerationFeedback429,
|
|
471
|
+
SubmitGenerationFeedback500,
|
|
472
|
+
UpdateBYOKKey200,
|
|
473
|
+
UpdateBYOKKey400,
|
|
474
|
+
UpdateBYOKKey401,
|
|
475
|
+
UpdateBYOKKey404,
|
|
476
|
+
UpdateBYOKKey500,
|
|
477
|
+
UpdateGuardrail200,
|
|
478
|
+
UpdateGuardrail400,
|
|
479
|
+
UpdateGuardrail401,
|
|
480
|
+
UpdateGuardrail404,
|
|
481
|
+
UpdateGuardrail500,
|
|
482
|
+
UpdateKeys200,
|
|
483
|
+
UpdateKeys400,
|
|
484
|
+
UpdateKeys401,
|
|
485
|
+
UpdateKeys404,
|
|
486
|
+
UpdateKeys429,
|
|
487
|
+
UpdateKeys500,
|
|
488
|
+
UpdateObservabilityDestination200,
|
|
489
|
+
UpdateObservabilityDestination400,
|
|
490
|
+
UpdateObservabilityDestination401,
|
|
491
|
+
UpdateObservabilityDestination404,
|
|
492
|
+
UpdateObservabilityDestination409,
|
|
493
|
+
UpdateObservabilityDestination500,
|
|
494
|
+
UpdateWorkspace200,
|
|
495
|
+
UpdateWorkspace400,
|
|
496
|
+
UpdateWorkspace401,
|
|
497
|
+
UpdateWorkspace403,
|
|
498
|
+
UpdateWorkspace404,
|
|
499
|
+
UpdateWorkspace500,
|
|
500
|
+
UploadFile200,
|
|
501
|
+
UploadFile400,
|
|
502
|
+
UploadFile401,
|
|
503
|
+
UploadFile403,
|
|
504
|
+
UploadFile413,
|
|
505
|
+
UploadFile429,
|
|
506
|
+
UploadFile500,
|
|
507
|
+
UpsertWorkspaceBudget200,
|
|
508
|
+
UpsertWorkspaceBudget400,
|
|
509
|
+
UpsertWorkspaceBudget401,
|
|
510
|
+
UpsertWorkspaceBudget404,
|
|
511
|
+
UpsertWorkspaceBudget500,
|
|
512
|
+
)
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
class OpenRouterClientError(_c.ClientError):
|
|
516
|
+
"""A documented error status of an operation."""
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
type _Errors = _HttpClientError | _S.SchemaError | OpenRouterClientError
|
|
520
|
+
type _PlainErrors = _HttpClientError | _S.SchemaError
|
|
521
|
+
type _SseErrors = _HttpClientError | _S.SchemaError | _sse.Retry | _sse.SseError
|
|
522
|
+
|
|
523
|
+
_GET_USER_ACTIVITY = _c.Operation("GET", url_params=('date', 'api_key_hash', 'user_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetUserActivity200, errors={400: ('GetUserActivity400', GetUserActivity400), 401: ('GetUserActivity401', GetUserActivity401), 403: ('GetUserActivity403', GetUserActivity403), 404: ('GetUserActivity404', GetUserActivity404), 500: ('GetUserActivity500', GetUserActivity500)})
|
|
524
|
+
_GET_ANALYTICS_META = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetAnalyticsMeta200, errors={401: ('GetAnalyticsMeta401', GetAnalyticsMeta401), 403: ('GetAnalyticsMeta403', GetAnalyticsMeta403), 500: ('GetAnalyticsMeta500', GetAnalyticsMeta500)})
|
|
525
|
+
_QUERY_ANALYTICS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=QueryAnalytics200, errors={400: ('QueryAnalytics400', QueryAnalytics400), 401: ('QueryAnalytics401', QueryAnalytics401), 403: ('QueryAnalytics403', QueryAnalytics403), 408: ('QueryAnalytics408', QueryAnalytics408), 500: ('QueryAnalytics500', QueryAnalytics500)})
|
|
526
|
+
_CREATE_AUDIO_SPEECH = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), errors={400: ('CreateAudioSpeech400', CreateAudioSpeech400), 401: ('CreateAudioSpeech401', CreateAudioSpeech401), 402: ('CreateAudioSpeech402', CreateAudioSpeech402), 404: ('CreateAudioSpeech404', CreateAudioSpeech404), 429: ('CreateAudioSpeech429', CreateAudioSpeech429), 500: ('CreateAudioSpeech500', CreateAudioSpeech500), 502: ('CreateAudioSpeech502', CreateAudioSpeech502), 503: ('CreateAudioSpeech503', CreateAudioSpeech503), 524: ('CreateAudioSpeech524', CreateAudioSpeech524), 529: ('CreateAudioSpeech529', CreateAudioSpeech529)})
|
|
527
|
+
_CREATE_AUDIO_TRANSCRIPTIONS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateAudioTranscriptions200, errors={400: ('CreateAudioTranscriptions400', CreateAudioTranscriptions400), 401: ('CreateAudioTranscriptions401', CreateAudioTranscriptions401), 402: ('CreateAudioTranscriptions402', CreateAudioTranscriptions402), 404: ('CreateAudioTranscriptions404', CreateAudioTranscriptions404), 429: ('CreateAudioTranscriptions429', CreateAudioTranscriptions429), 500: ('CreateAudioTranscriptions500', CreateAudioTranscriptions500), 502: ('CreateAudioTranscriptions502', CreateAudioTranscriptions502), 503: ('CreateAudioTranscriptions503', CreateAudioTranscriptions503), 524: ('CreateAudioTranscriptions524', CreateAudioTranscriptions524), 529: ('CreateAudioTranscriptions529', CreateAudioTranscriptions529)})
|
|
528
|
+
_EXCHANGE_AUTH_CODE_FOR_API_KEY = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ExchangeAuthCodeForAPIKey200, errors={400: ('ExchangeAuthCodeForAPIKey400', ExchangeAuthCodeForAPIKey400), 403: ('ExchangeAuthCodeForAPIKey403', ExchangeAuthCodeForAPIKey403), 500: ('ExchangeAuthCodeForAPIKey500', ExchangeAuthCodeForAPIKey500)})
|
|
529
|
+
_CREATE_AUTH_KEYS_CODE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateAuthKeysCode200, errors={400: ('CreateAuthKeysCode400', CreateAuthKeysCode400), 401: ('CreateAuthKeysCode401', CreateAuthKeysCode401), 403: ('CreateAuthKeysCode403', CreateAuthKeysCode403), 409: ('CreateAuthKeysCode409', CreateAuthKeysCode409), 500: ('CreateAuthKeysCode500', CreateAuthKeysCode500)})
|
|
530
|
+
_GET_BENCHMARKS = _c.Operation("GET", url_params=('source', 'task_type', 'arena', 'category', 'max_results', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetBenchmarks200, errors={400: ('GetBenchmarks400', GetBenchmarks400), 401: ('GetBenchmarks401', GetBenchmarks401), 429: ('GetBenchmarks429', GetBenchmarks429), 500: ('GetBenchmarks500', GetBenchmarks500)})
|
|
531
|
+
_LIST_BYOK_KEYS = _c.Operation("GET", url_params=('offset', 'limit', 'workspace_id', 'provider', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListBYOKKeys200, errors={400: ('ListBYOKKeys400', ListBYOKKeys400), 401: ('ListBYOKKeys401', ListBYOKKeys401), 500: ('ListBYOKKeys500', ListBYOKKeys500)})
|
|
532
|
+
_CREATE_BYOK_KEY = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateBYOKKey201, errors={400: ('CreateBYOKKey400', CreateBYOKKey400), 401: ('CreateBYOKKey401', CreateBYOKKey401), 403: ('CreateBYOKKey403', CreateBYOKKey403), 500: ('CreateBYOKKey500', CreateBYOKKey500)})
|
|
533
|
+
_GET_BYOK_KEY = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetBYOKKey200, errors={401: ('GetBYOKKey401', GetBYOKKey401), 404: ('GetBYOKKey404', GetBYOKKey404), 500: ('GetBYOKKey500', GetBYOKKey500)})
|
|
534
|
+
_DELETE_BYOK_KEY = _c.Operation("DELETE", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteBYOKKey200, errors={401: ('DeleteBYOKKey401', DeleteBYOKKey401), 404: ('DeleteBYOKKey404', DeleteBYOKKey404), 500: ('DeleteBYOKKey500', DeleteBYOKKey500)})
|
|
535
|
+
_UPDATE_BYOK_KEY = _c.Operation("PATCH", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UpdateBYOKKey200, errors={400: ('UpdateBYOKKey400', UpdateBYOKKey400), 401: ('UpdateBYOKKey401', UpdateBYOKKey401), 404: ('UpdateBYOKKey404', UpdateBYOKKey404), 500: ('UpdateBYOKKey500', UpdateBYOKKey500)})
|
|
536
|
+
_SEND_CHAT_COMPLETION_REQUEST = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', 'X-OpenRouter-Metadata', ), success=SendChatCompletionRequest200, errors={400: ('SendChatCompletionRequest400', SendChatCompletionRequest400), 401: ('SendChatCompletionRequest401', SendChatCompletionRequest401), 402: ('SendChatCompletionRequest402', SendChatCompletionRequest402), 403: ('SendChatCompletionRequest403', SendChatCompletionRequest403), 404: ('SendChatCompletionRequest404', SendChatCompletionRequest404), 408: ('SendChatCompletionRequest408', SendChatCompletionRequest408), 413: ('SendChatCompletionRequest413', SendChatCompletionRequest413), 422: ('SendChatCompletionRequest422', SendChatCompletionRequest422), 429: ('SendChatCompletionRequest429', SendChatCompletionRequest429), 500: ('SendChatCompletionRequest500', SendChatCompletionRequest500), 502: ('SendChatCompletionRequest502', SendChatCompletionRequest502), 503: ('SendChatCompletionRequest503', SendChatCompletionRequest503), 524: ('SendChatCompletionRequest524', SendChatCompletionRequest524), 529: ('SendChatCompletionRequest529', SendChatCompletionRequest529)})
|
|
537
|
+
_SEND_CHAT_COMPLETION_REQUEST_SSE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', 'X-OpenRouter-Metadata', ))
|
|
538
|
+
_GET_TASK_CLASSIFICATIONS = _c.Operation("GET", url_params=('window', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetTaskClassifications200, errors={400: ('GetTaskClassifications400', GetTaskClassifications400), 401: ('GetTaskClassifications401', GetTaskClassifications401), 429: ('GetTaskClassifications429', GetTaskClassifications429), 500: ('GetTaskClassifications500', GetTaskClassifications500)})
|
|
539
|
+
_GET_CREDITS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetCredits200, errors={401: ('GetCredits401', GetCredits401), 403: ('GetCredits403', GetCredits403), 500: ('GetCredits500', GetCredits500)})
|
|
540
|
+
_CREATE_COINBASE_CHARGE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), void=(200, ), errors={410: ('CreateCoinbaseCharge410', CreateCoinbaseCharge410)})
|
|
541
|
+
_GET_APP_RANKINGS = _c.Operation("GET", url_params=('category', 'subcategory', 'sort', 'start_date', 'end_date', 'limit', 'offset', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetAppRankings200, errors={400: ('GetAppRankings400', GetAppRankings400), 401: ('GetAppRankings401', GetAppRankings401), 429: ('GetAppRankings429', GetAppRankings429), 500: ('GetAppRankings500', GetAppRankings500)})
|
|
542
|
+
_GET_RANKINGS_DAILY = _c.Operation("GET", url_params=('start_date', 'end_date', 'period', 'modality', 'context_bucket', 'category', 'language_type', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetRankingsDaily200, errors={400: ('GetRankingsDaily400', GetRankingsDaily400), 401: ('GetRankingsDaily401', GetRankingsDaily401), 429: ('GetRankingsDaily429', GetRankingsDaily429), 500: ('GetRankingsDaily500', GetRankingsDaily500)})
|
|
543
|
+
_CREATE_EMBEDDINGS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateEmbeddings200, errors={400: ('CreateEmbeddings400', CreateEmbeddings400), 401: ('CreateEmbeddings401', CreateEmbeddings401), 402: ('CreateEmbeddings402', CreateEmbeddings402), 404: ('CreateEmbeddings404', CreateEmbeddings404), 429: ('CreateEmbeddings429', CreateEmbeddings429), 500: ('CreateEmbeddings500', CreateEmbeddings500), 502: ('CreateEmbeddings502', CreateEmbeddings502), 503: ('CreateEmbeddings503', CreateEmbeddings503), 524: ('CreateEmbeddings524', CreateEmbeddings524), 529: ('CreateEmbeddings529', CreateEmbeddings529)})
|
|
544
|
+
_CREATE_EMBEDDINGS_SSE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ))
|
|
545
|
+
_LIST_EMBEDDINGS_MODELS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListEmbeddingsModels200, errors={400: ('ListEmbeddingsModels400', ListEmbeddingsModels400), 500: ('ListEmbeddingsModels500', ListEmbeddingsModels500)})
|
|
546
|
+
_LIST_ENDPOINTS_ZDR = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListEndpointsZdr200, errors={403: ('ListEndpointsZdr403', ListEndpointsZdr403), 500: ('ListEndpointsZdr500', ListEndpointsZdr500)})
|
|
547
|
+
_LIST_FILES = _c.Operation("GET", url_params=('limit', 'cursor', 'workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListFiles200, errors={400: ('ListFiles400', ListFiles400), 401: ('ListFiles401', ListFiles401), 429: ('ListFiles429', ListFiles429), 500: ('ListFiles500', ListFiles500)})
|
|
548
|
+
_UPLOAD_FILE = _c.Operation("POST", url_params=('workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UploadFile200, errors={400: ('UploadFile400', UploadFile400), 401: ('UploadFile401', UploadFile401), 403: ('UploadFile403', UploadFile403), 413: ('UploadFile413', UploadFile413), 429: ('UploadFile429', UploadFile429), 500: ('UploadFile500', UploadFile500)})
|
|
549
|
+
_GET_FILE_METADATA = _c.Operation("GET", url_params=('workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetFileMetadata200, errors={401: ('GetFileMetadata401', GetFileMetadata401), 404: ('GetFileMetadata404', GetFileMetadata404), 429: ('GetFileMetadata429', GetFileMetadata429), 500: ('GetFileMetadata500', GetFileMetadata500)})
|
|
550
|
+
_DELETE_FILE = _c.Operation("DELETE", url_params=('workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteFile200, errors={401: ('DeleteFile401', DeleteFile401), 404: ('DeleteFile404', DeleteFile404), 429: ('DeleteFile429', DeleteFile429), 500: ('DeleteFile500', DeleteFile500)})
|
|
551
|
+
_DOWNLOAD_FILE_CONTENT = _c.Operation("GET", url_params=('workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), errors={400: ('DownloadFileContent400', DownloadFileContent400), 401: ('DownloadFileContent401', DownloadFileContent401), 404: ('DownloadFileContent404', DownloadFileContent404), 429: ('DownloadFileContent429', DownloadFileContent429), 500: ('DownloadFileContent500', DownloadFileContent500)})
|
|
552
|
+
_DOWNLOAD_FILE_CONTENT_STREAM = _c.Operation("GET", url_params=('workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ))
|
|
553
|
+
_GET_GENERATION = _c.Operation("GET", url_params=('id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetGeneration200, errors={401: ('GetGeneration401', GetGeneration401), 402: ('GetGeneration402', GetGeneration402), 404: ('GetGeneration404', GetGeneration404), 429: ('GetGeneration429', GetGeneration429), 500: ('GetGeneration500', GetGeneration500), 502: ('GetGeneration502', GetGeneration502), 524: ('GetGeneration524', GetGeneration524), 529: ('GetGeneration529', GetGeneration529)})
|
|
554
|
+
_LIST_GENERATION_CONTENT = _c.Operation("GET", url_params=('id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListGenerationContent200, errors={401: ('ListGenerationContent401', ListGenerationContent401), 403: ('ListGenerationContent403', ListGenerationContent403), 404: ('ListGenerationContent404', ListGenerationContent404), 429: ('ListGenerationContent429', ListGenerationContent429), 500: ('ListGenerationContent500', ListGenerationContent500), 502: ('ListGenerationContent502', ListGenerationContent502), 524: ('ListGenerationContent524', ListGenerationContent524), 529: ('ListGenerationContent529', ListGenerationContent529)})
|
|
555
|
+
_SUBMIT_GENERATION_FEEDBACK = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=SubmitGenerationFeedback200, errors={400: ('SubmitGenerationFeedback400', SubmitGenerationFeedback400), 401: ('SubmitGenerationFeedback401', SubmitGenerationFeedback401), 404: ('SubmitGenerationFeedback404', SubmitGenerationFeedback404), 429: ('SubmitGenerationFeedback429', SubmitGenerationFeedback429), 500: ('SubmitGenerationFeedback500', SubmitGenerationFeedback500)})
|
|
556
|
+
_LIST_GUARDRAILS = _c.Operation("GET", url_params=('offset', 'limit', 'workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListGuardrails200, errors={400: ('ListGuardrails400', ListGuardrails400), 401: ('ListGuardrails401', ListGuardrails401), 500: ('ListGuardrails500', ListGuardrails500)})
|
|
557
|
+
_CREATE_GUARDRAIL = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateGuardrail201, errors={400: ('CreateGuardrail400', CreateGuardrail400), 401: ('CreateGuardrail401', CreateGuardrail401), 403: ('CreateGuardrail403', CreateGuardrail403), 500: ('CreateGuardrail500', CreateGuardrail500)})
|
|
558
|
+
_GET_GUARDRAIL = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetGuardrail200, errors={401: ('GetGuardrail401', GetGuardrail401), 404: ('GetGuardrail404', GetGuardrail404), 500: ('GetGuardrail500', GetGuardrail500)})
|
|
559
|
+
_DELETE_GUARDRAIL = _c.Operation("DELETE", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteGuardrail200, errors={401: ('DeleteGuardrail401', DeleteGuardrail401), 404: ('DeleteGuardrail404', DeleteGuardrail404), 500: ('DeleteGuardrail500', DeleteGuardrail500)})
|
|
560
|
+
_UPDATE_GUARDRAIL = _c.Operation("PATCH", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UpdateGuardrail200, errors={400: ('UpdateGuardrail400', UpdateGuardrail400), 401: ('UpdateGuardrail401', UpdateGuardrail401), 404: ('UpdateGuardrail404', UpdateGuardrail404), 500: ('UpdateGuardrail500', UpdateGuardrail500)})
|
|
561
|
+
_LIST_GUARDRAIL_KEY_ASSIGNMENTS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListGuardrailKeyAssignments200, errors={401: ('ListGuardrailKeyAssignments401', ListGuardrailKeyAssignments401), 404: ('ListGuardrailKeyAssignments404', ListGuardrailKeyAssignments404), 500: ('ListGuardrailKeyAssignments500', ListGuardrailKeyAssignments500)})
|
|
562
|
+
_BULK_ASSIGN_KEYS_TO_GUARDRAIL = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=BulkAssignKeysToGuardrail200, errors={400: ('BulkAssignKeysToGuardrail400', BulkAssignKeysToGuardrail400), 401: ('BulkAssignKeysToGuardrail401', BulkAssignKeysToGuardrail401), 404: ('BulkAssignKeysToGuardrail404', BulkAssignKeysToGuardrail404), 500: ('BulkAssignKeysToGuardrail500', BulkAssignKeysToGuardrail500)})
|
|
563
|
+
_BULK_UNASSIGN_KEYS_FROM_GUARDRAIL = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=BulkUnassignKeysFromGuardrail200, errors={400: ('BulkUnassignKeysFromGuardrail400', BulkUnassignKeysFromGuardrail400), 401: ('BulkUnassignKeysFromGuardrail401', BulkUnassignKeysFromGuardrail401), 404: ('BulkUnassignKeysFromGuardrail404', BulkUnassignKeysFromGuardrail404), 500: ('BulkUnassignKeysFromGuardrail500', BulkUnassignKeysFromGuardrail500)})
|
|
564
|
+
_LIST_GUARDRAIL_MEMBER_ASSIGNMENTS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListGuardrailMemberAssignments200, errors={401: ('ListGuardrailMemberAssignments401', ListGuardrailMemberAssignments401), 404: ('ListGuardrailMemberAssignments404', ListGuardrailMemberAssignments404), 500: ('ListGuardrailMemberAssignments500', ListGuardrailMemberAssignments500)})
|
|
565
|
+
_BULK_ASSIGN_MEMBERS_TO_GUARDRAIL = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=BulkAssignMembersToGuardrail200, errors={400: ('BulkAssignMembersToGuardrail400', BulkAssignMembersToGuardrail400), 401: ('BulkAssignMembersToGuardrail401', BulkAssignMembersToGuardrail401), 404: ('BulkAssignMembersToGuardrail404', BulkAssignMembersToGuardrail404), 500: ('BulkAssignMembersToGuardrail500', BulkAssignMembersToGuardrail500)})
|
|
566
|
+
_BULK_UNASSIGN_MEMBERS_FROM_GUARDRAIL = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=BulkUnassignMembersFromGuardrail200, errors={400: ('BulkUnassignMembersFromGuardrail400', BulkUnassignMembersFromGuardrail400), 401: ('BulkUnassignMembersFromGuardrail401', BulkUnassignMembersFromGuardrail401), 404: ('BulkUnassignMembersFromGuardrail404', BulkUnassignMembersFromGuardrail404), 500: ('BulkUnassignMembersFromGuardrail500', BulkUnassignMembersFromGuardrail500)})
|
|
567
|
+
_LIST_KEY_ASSIGNMENTS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListKeyAssignments200, errors={401: ('ListKeyAssignments401', ListKeyAssignments401), 500: ('ListKeyAssignments500', ListKeyAssignments500)})
|
|
568
|
+
_LIST_MEMBER_ASSIGNMENTS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListMemberAssignments200, errors={401: ('ListMemberAssignments401', ListMemberAssignments401), 500: ('ListMemberAssignments500', ListMemberAssignments500)})
|
|
569
|
+
_CREATE_IMAGES = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateImages200, errors={400: ('CreateImages400', CreateImages400), 401: ('CreateImages401', CreateImages401), 402: ('CreateImages402', CreateImages402), 403: ('CreateImages403', CreateImages403), 404: ('CreateImages404', CreateImages404), 413: ('CreateImages413', CreateImages413), 429: ('CreateImages429', CreateImages429), 500: ('CreateImages500', CreateImages500), 502: ('CreateImages502', CreateImages502), 524: ('CreateImages524', CreateImages524), 529: ('CreateImages529', CreateImages529)})
|
|
570
|
+
_CREATE_IMAGES_SSE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ))
|
|
571
|
+
_LIST_IMAGE_MODELS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListImageModels200, errors={500: ('ListImageModels500', ListImageModels500)})
|
|
572
|
+
_LIST_IMAGE_MODEL_ENDPOINTS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListImageModelEndpoints200, errors={404: ('ListImageModelEndpoints404', ListImageModelEndpoints404), 500: ('ListImageModelEndpoints500', ListImageModelEndpoints500)})
|
|
573
|
+
_GET_CURRENT_KEY = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetCurrentKey200, errors={401: ('GetCurrentKey401', GetCurrentKey401), 500: ('GetCurrentKey500', GetCurrentKey500)})
|
|
574
|
+
_LIST = _c.Operation("GET", url_params=('include_disabled', 'offset', 'workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=List200, errors={400: ('List400', List400), 401: ('List401', List401), 429: ('List429', List429), 500: ('List500', List500)})
|
|
575
|
+
_CREATE_KEYS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateKeys201, errors={400: ('CreateKeys400', CreateKeys400), 401: ('CreateKeys401', CreateKeys401), 403: ('CreateKeys403', CreateKeys403), 429: ('CreateKeys429', CreateKeys429), 500: ('CreateKeys500', CreateKeys500)})
|
|
576
|
+
_GET_KEY = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetKey200, errors={401: ('GetKey401', GetKey401), 404: ('GetKey404', GetKey404), 429: ('GetKey429', GetKey429), 500: ('GetKey500', GetKey500)})
|
|
577
|
+
_DELETE_KEYS = _c.Operation("DELETE", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteKeys200, errors={401: ('DeleteKeys401', DeleteKeys401), 404: ('DeleteKeys404', DeleteKeys404), 429: ('DeleteKeys429', DeleteKeys429), 500: ('DeleteKeys500', DeleteKeys500)})
|
|
578
|
+
_UPDATE_KEYS = _c.Operation("PATCH", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UpdateKeys200, errors={400: ('UpdateKeys400', UpdateKeys400), 401: ('UpdateKeys401', UpdateKeys401), 404: ('UpdateKeys404', UpdateKeys404), 429: ('UpdateKeys429', UpdateKeys429), 500: ('UpdateKeys500', UpdateKeys500)})
|
|
579
|
+
_CREATE_MESSAGES = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', 'X-OpenRouter-Metadata', ), success=CreateMessages200, errors={400: ('CreateMessages400', CreateMessages400), 401: ('CreateMessages401', CreateMessages401), 403: ('CreateMessages403', CreateMessages403), 404: ('CreateMessages404', CreateMessages404), 429: ('CreateMessages429', CreateMessages429), 500: ('CreateMessages500', CreateMessages500), 503: ('CreateMessages503', CreateMessages503), 529: ('CreateMessages529', CreateMessages529)})
|
|
580
|
+
_CREATE_MESSAGES_SSE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', 'X-OpenRouter-Metadata', ))
|
|
581
|
+
_GET_MODEL = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetModel200, errors={403: ('GetModel403', GetModel403), 404: ('GetModel404', GetModel404), 500: ('GetModel500', GetModel500)})
|
|
582
|
+
_GET_MODELS = _c.Operation("GET", url_params=('offset', 'limit', 'category', 'supported_parameters', 'output_modalities', 'sort', 'q', 'input_modalities', 'context', 'min_price', 'max_price', 'arch', 'model_authors', 'providers', 'distillable', 'zdr', 'region', 'min_output_price', 'max_output_price', 'min_age_days', 'max_age_days', 'min_intelligence_index', 'max_intelligence_index', 'min_coding_index', 'max_coding_index', 'min_agentic_index', 'max_agentic_index', 'min_tool_success_rate', 'max_tool_success_rate', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetModels200, errors={400: ('GetModels400', GetModels400), 403: ('GetModels403', GetModels403), 500: ('GetModels500', GetModels500)})
|
|
583
|
+
_LIST_ENDPOINTS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListEndpoints200, errors={403: ('ListEndpoints403', ListEndpoints403), 404: ('ListEndpoints404', ListEndpoints404), 500: ('ListEndpoints500', ListEndpoints500)})
|
|
584
|
+
_LIST_MODELS_COUNT = _c.Operation("GET", url_params=('output_modalities', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListModelsCount200, errors={400: ('ListModelsCount400', ListModelsCount400), 403: ('ListModelsCount403', ListModelsCount403), 500: ('ListModelsCount500', ListModelsCount500)})
|
|
585
|
+
_LIST_MODELS_USER = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListModelsUser200, errors={401: ('ListModelsUser401', ListModelsUser401), 403: ('ListModelsUser403', ListModelsUser403), 404: ('ListModelsUser404', ListModelsUser404), 500: ('ListModelsUser500', ListModelsUser500)})
|
|
586
|
+
_LIST_OBSERVABILITY_DESTINATIONS = _c.Operation("GET", url_params=('offset', 'limit', 'workspace_id', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListObservabilityDestinations200, errors={400: ('ListObservabilityDestinations400', ListObservabilityDestinations400), 401: ('ListObservabilityDestinations401', ListObservabilityDestinations401), 500: ('ListObservabilityDestinations500', ListObservabilityDestinations500)})
|
|
587
|
+
_CREATE_OBSERVABILITY_DESTINATION = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateObservabilityDestination201, errors={400: ('CreateObservabilityDestination400', CreateObservabilityDestination400), 401: ('CreateObservabilityDestination401', CreateObservabilityDestination401), 403: ('CreateObservabilityDestination403', CreateObservabilityDestination403), 409: ('CreateObservabilityDestination409', CreateObservabilityDestination409), 500: ('CreateObservabilityDestination500', CreateObservabilityDestination500)})
|
|
588
|
+
_GET_OBSERVABILITY_DESTINATION = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetObservabilityDestination200, errors={401: ('GetObservabilityDestination401', GetObservabilityDestination401), 404: ('GetObservabilityDestination404', GetObservabilityDestination404), 500: ('GetObservabilityDestination500', GetObservabilityDestination500)})
|
|
589
|
+
_DELETE_OBSERVABILITY_DESTINATION = _c.Operation("DELETE", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteObservabilityDestination200, errors={401: ('DeleteObservabilityDestination401', DeleteObservabilityDestination401), 404: ('DeleteObservabilityDestination404', DeleteObservabilityDestination404), 500: ('DeleteObservabilityDestination500', DeleteObservabilityDestination500)})
|
|
590
|
+
_UPDATE_OBSERVABILITY_DESTINATION = _c.Operation("PATCH", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UpdateObservabilityDestination200, errors={400: ('UpdateObservabilityDestination400', UpdateObservabilityDestination400), 401: ('UpdateObservabilityDestination401', UpdateObservabilityDestination401), 404: ('UpdateObservabilityDestination404', UpdateObservabilityDestination404), 409: ('UpdateObservabilityDestination409', UpdateObservabilityDestination409), 500: ('UpdateObservabilityDestination500', UpdateObservabilityDestination500)})
|
|
591
|
+
_LIST_ORGANIZATION_MEMBERS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListOrganizationMembers200, errors={401: ('ListOrganizationMembers401', ListOrganizationMembers401), 404: ('ListOrganizationMembers404', ListOrganizationMembers404), 500: ('ListOrganizationMembers500', ListOrganizationMembers500)})
|
|
592
|
+
_LIST_PRESETS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListPresets200, errors={400: ('ListPresets400', ListPresets400), 401: ('ListPresets401', ListPresets401), 500: ('ListPresets500', ListPresets500)})
|
|
593
|
+
_GET_PRESET = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetPreset200, errors={400: ('GetPreset400', GetPreset400), 401: ('GetPreset401', GetPreset401), 404: ('GetPreset404', GetPreset404), 500: ('GetPreset500', GetPreset500)})
|
|
594
|
+
_CREATE_PRESETS_CHAT_COMPLETIONS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreatePresetsChatCompletions200, errors={400: ('CreatePresetsChatCompletions400', CreatePresetsChatCompletions400), 401: ('CreatePresetsChatCompletions401', CreatePresetsChatCompletions401), 403: ('CreatePresetsChatCompletions403', CreatePresetsChatCompletions403), 404: ('CreatePresetsChatCompletions404', CreatePresetsChatCompletions404), 409: ('CreatePresetsChatCompletions409', CreatePresetsChatCompletions409), 500: ('CreatePresetsChatCompletions500', CreatePresetsChatCompletions500)})
|
|
595
|
+
_CREATE_PRESETS_MESSAGES = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreatePresetsMessages200, errors={400: ('CreatePresetsMessages400', CreatePresetsMessages400), 401: ('CreatePresetsMessages401', CreatePresetsMessages401), 403: ('CreatePresetsMessages403', CreatePresetsMessages403), 404: ('CreatePresetsMessages404', CreatePresetsMessages404), 409: ('CreatePresetsMessages409', CreatePresetsMessages409), 500: ('CreatePresetsMessages500', CreatePresetsMessages500)})
|
|
596
|
+
_CREATE_PRESETS_RESPONSES = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreatePresetsResponses200, errors={400: ('CreatePresetsResponses400', CreatePresetsResponses400), 401: ('CreatePresetsResponses401', CreatePresetsResponses401), 403: ('CreatePresetsResponses403', CreatePresetsResponses403), 404: ('CreatePresetsResponses404', CreatePresetsResponses404), 409: ('CreatePresetsResponses409', CreatePresetsResponses409), 500: ('CreatePresetsResponses500', CreatePresetsResponses500)})
|
|
597
|
+
_LIST_PRESET_VERSIONS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListPresetVersions200, errors={400: ('ListPresetVersions400', ListPresetVersions400), 401: ('ListPresetVersions401', ListPresetVersions401), 404: ('ListPresetVersions404', ListPresetVersions404), 500: ('ListPresetVersions500', ListPresetVersions500)})
|
|
598
|
+
_GET_PRESET_VERSION = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetPresetVersion200, errors={400: ('GetPresetVersion400', GetPresetVersion400), 401: ('GetPresetVersion401', GetPresetVersion401), 404: ('GetPresetVersion404', GetPresetVersion404), 500: ('GetPresetVersion500', GetPresetVersion500)})
|
|
599
|
+
_LIST_PROVIDERS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListProviders200, errors={500: ('ListProviders500', ListProviders500)})
|
|
600
|
+
_CREATE_RERANK = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateRerank200, errors={400: ('CreateRerank400', CreateRerank400), 401: ('CreateRerank401', CreateRerank401), 402: ('CreateRerank402', CreateRerank402), 404: ('CreateRerank404', CreateRerank404), 429: ('CreateRerank429', CreateRerank429), 500: ('CreateRerank500', CreateRerank500), 502: ('CreateRerank502', CreateRerank502), 503: ('CreateRerank503', CreateRerank503), 524: ('CreateRerank524', CreateRerank524), 529: ('CreateRerank529', CreateRerank529)})
|
|
601
|
+
_CREATE_RERANK_SSE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ))
|
|
602
|
+
_CREATE_RESPONSES = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', 'X-OpenRouter-Metadata', ), success=CreateResponses200, errors={400: ('CreateResponses400', CreateResponses400), 401: ('CreateResponses401', CreateResponses401), 402: ('CreateResponses402', CreateResponses402), 403: ('CreateResponses403', CreateResponses403), 404: ('CreateResponses404', CreateResponses404), 408: ('CreateResponses408', CreateResponses408), 413: ('CreateResponses413', CreateResponses413), 422: ('CreateResponses422', CreateResponses422), 429: ('CreateResponses429', CreateResponses429), 500: ('CreateResponses500', CreateResponses500), 502: ('CreateResponses502', CreateResponses502), 503: ('CreateResponses503', CreateResponses503), 524: ('CreateResponses524', CreateResponses524), 529: ('CreateResponses529', CreateResponses529)})
|
|
603
|
+
_CREATE_RESPONSES_SSE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', 'X-OpenRouter-Metadata', ))
|
|
604
|
+
_CREATE_VIDEOS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateVideos202, errors={400: ('CreateVideos400', CreateVideos400), 401: ('CreateVideos401', CreateVideos401), 402: ('CreateVideos402', CreateVideos402), 404: ('CreateVideos404', CreateVideos404), 429: ('CreateVideos429', CreateVideos429), 500: ('CreateVideos500', CreateVideos500)})
|
|
605
|
+
_GET_VIDEOS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetVideos200, errors={401: ('GetVideos401', GetVideos401), 404: ('GetVideos404', GetVideos404), 500: ('GetVideos500', GetVideos500)})
|
|
606
|
+
_LIST_VIDEOS_CONTENT = _c.Operation("GET", url_params=('index', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), errors={400: ('ListVideosContent400', ListVideosContent400), 401: ('ListVideosContent401', ListVideosContent401), 404: ('ListVideosContent404', ListVideosContent404), 500: ('ListVideosContent500', ListVideosContent500), 502: ('ListVideosContent502', ListVideosContent502)})
|
|
607
|
+
_LIST_VIDEOS_MODELS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListVideosModels200, errors={400: ('ListVideosModels400', ListVideosModels400), 500: ('ListVideosModels500', ListVideosModels500)})
|
|
608
|
+
_LIST_WORKSPACES = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListWorkspaces200, errors={401: ('ListWorkspaces401', ListWorkspaces401), 500: ('ListWorkspaces500', ListWorkspaces500)})
|
|
609
|
+
_CREATE_WORKSPACE = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=CreateWorkspace201, errors={400: ('CreateWorkspace400', CreateWorkspace400), 401: ('CreateWorkspace401', CreateWorkspace401), 403: ('CreateWorkspace403', CreateWorkspace403), 500: ('CreateWorkspace500', CreateWorkspace500)})
|
|
610
|
+
_GET_WORKSPACE = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=GetWorkspace200, errors={401: ('GetWorkspace401', GetWorkspace401), 404: ('GetWorkspace404', GetWorkspace404), 500: ('GetWorkspace500', GetWorkspace500)})
|
|
611
|
+
_DELETE_WORKSPACE = _c.Operation("DELETE", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteWorkspace200, errors={400: ('DeleteWorkspace400', DeleteWorkspace400), 401: ('DeleteWorkspace401', DeleteWorkspace401), 403: ('DeleteWorkspace403', DeleteWorkspace403), 404: ('DeleteWorkspace404', DeleteWorkspace404), 500: ('DeleteWorkspace500', DeleteWorkspace500)})
|
|
612
|
+
_UPDATE_WORKSPACE = _c.Operation("PATCH", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UpdateWorkspace200, errors={400: ('UpdateWorkspace400', UpdateWorkspace400), 401: ('UpdateWorkspace401', UpdateWorkspace401), 403: ('UpdateWorkspace403', UpdateWorkspace403), 404: ('UpdateWorkspace404', UpdateWorkspace404), 500: ('UpdateWorkspace500', UpdateWorkspace500)})
|
|
613
|
+
_LIST_WORKSPACE_BUDGETS = _c.Operation("GET", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListWorkspaceBudgets200, errors={401: ('ListWorkspaceBudgets401', ListWorkspaceBudgets401), 404: ('ListWorkspaceBudgets404', ListWorkspaceBudgets404), 500: ('ListWorkspaceBudgets500', ListWorkspaceBudgets500)})
|
|
614
|
+
_UPSERT_WORKSPACE_BUDGET = _c.Operation("PUT", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=UpsertWorkspaceBudget200, errors={400: ('UpsertWorkspaceBudget400', UpsertWorkspaceBudget400), 401: ('UpsertWorkspaceBudget401', UpsertWorkspaceBudget401), 404: ('UpsertWorkspaceBudget404', UpsertWorkspaceBudget404), 500: ('UpsertWorkspaceBudget500', UpsertWorkspaceBudget500)})
|
|
615
|
+
_DELETE_WORKSPACE_BUDGET = _c.Operation("DELETE", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=DeleteWorkspaceBudget200, errors={401: ('DeleteWorkspaceBudget401', DeleteWorkspaceBudget401), 404: ('DeleteWorkspaceBudget404', DeleteWorkspaceBudget404), 500: ('DeleteWorkspaceBudget500', DeleteWorkspaceBudget500)})
|
|
616
|
+
_LIST_WORKSPACE_MEMBERS = _c.Operation("GET", url_params=('offset', 'limit', ), headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=ListWorkspaceMembers200, errors={401: ('ListWorkspaceMembers401', ListWorkspaceMembers401), 403: ('ListWorkspaceMembers403', ListWorkspaceMembers403), 404: ('ListWorkspaceMembers404', ListWorkspaceMembers404), 500: ('ListWorkspaceMembers500', ListWorkspaceMembers500)})
|
|
617
|
+
_BULK_ADD_WORKSPACE_MEMBERS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=BulkAddWorkspaceMembers200, errors={400: ('BulkAddWorkspaceMembers400', BulkAddWorkspaceMembers400), 401: ('BulkAddWorkspaceMembers401', BulkAddWorkspaceMembers401), 403: ('BulkAddWorkspaceMembers403', BulkAddWorkspaceMembers403), 404: ('BulkAddWorkspaceMembers404', BulkAddWorkspaceMembers404), 500: ('BulkAddWorkspaceMembers500', BulkAddWorkspaceMembers500)})
|
|
618
|
+
_BULK_REMOVE_WORKSPACE_MEMBERS = _c.Operation("POST", headers=('HTTP-Referer', 'X-OpenRouter-Title', 'X-OpenRouter-Categories', ), success=BulkRemoveWorkspaceMembers200, errors={400: ('BulkRemoveWorkspaceMembers400', BulkRemoveWorkspaceMembers400), 401: ('BulkRemoveWorkspaceMembers401', BulkRemoveWorkspaceMembers401), 403: ('BulkRemoveWorkspaceMembers403', BulkRemoveWorkspaceMembers403), 404: ('BulkRemoveWorkspaceMembers404', BulkRemoveWorkspaceMembers404), 500: ('BulkRemoveWorkspaceMembers500', BulkRemoveWorkspaceMembers500)})
|
|
619
|
+
|
|
620
|
+
|
|
621
|
+
class OpenRouterClient(_c.GeneratedClient):
|
|
622
|
+
"""The OpenRouter API: build it with ``make``."""
|
|
623
|
+
|
|
624
|
+
__slots__ = ()
|
|
625
|
+
|
|
626
|
+
error_class = OpenRouterClientError
|
|
627
|
+
|
|
628
|
+
@_t.overload
|
|
629
|
+
def get_user_activity(self, *, params: _T.GetUserActivityParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetUserActivity200, _Errors]: ...
|
|
630
|
+
@_t.overload
|
|
631
|
+
def get_user_activity(self, *, params: _T.GetUserActivityParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetUserActivity200, _HttpClientResponse], _Errors]: ...
|
|
632
|
+
def get_user_activity(self, *, params: _T.GetUserActivityParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
633
|
+
"""Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
634
|
+
return self._json(_GET_USER_ACTIVITY, "/activity", params, None, include_response)
|
|
635
|
+
|
|
636
|
+
@_t.overload
|
|
637
|
+
def get_analytics_meta(self, *, params: _T.GetAnalyticsMetaParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetAnalyticsMeta200, _Errors]: ...
|
|
638
|
+
@_t.overload
|
|
639
|
+
def get_analytics_meta(self, *, params: _T.GetAnalyticsMetaParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetAnalyticsMeta200, _HttpClientResponse], _Errors]: ...
|
|
640
|
+
def get_analytics_meta(self, *, params: _T.GetAnalyticsMetaParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
641
|
+
"""Returns the available metrics, dimensions, filter operators, and granularities for the analytics query endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
642
|
+
return self._json(_GET_ANALYTICS_META, "/analytics/meta", params, None, include_response)
|
|
643
|
+
|
|
644
|
+
@_t.overload
|
|
645
|
+
def query_analytics(self, *, payload: _T.QueryAnalyticsRequestJson, params: _T.QueryAnalyticsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.QueryAnalytics200, _Errors]: ...
|
|
646
|
+
@_t.overload
|
|
647
|
+
def query_analytics(self, *, payload: _T.QueryAnalyticsRequestJson, params: _T.QueryAnalyticsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.QueryAnalytics200, _HttpClientResponse], _Errors]: ...
|
|
648
|
+
def query_analytics(self, *, payload: _T.QueryAnalyticsRequestJson, params: _T.QueryAnalyticsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
649
|
+
"""Execute an analytics query with specified metrics, dimensions, filters, and time range. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
650
|
+
return self._json(_QUERY_ANALYTICS, "/analytics/query", params, _c.json_body(payload), include_response)
|
|
651
|
+
|
|
652
|
+
@_t.overload
|
|
653
|
+
def create_audio_speech(self, *, payload: _T.CreateAudioSpeechRequestJson, params: _T.CreateAudioSpeechParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[None, _Errors]: ...
|
|
654
|
+
@_t.overload
|
|
655
|
+
def create_audio_speech(self, *, payload: _T.CreateAudioSpeechRequestJson, params: _T.CreateAudioSpeechParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[None, _HttpClientResponse], _Errors]: ...
|
|
656
|
+
def create_audio_speech(self, *, payload: _T.CreateAudioSpeechRequestJson, params: _T.CreateAudioSpeechParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
657
|
+
"""Synthesizes audio from the input text. Returns a raw audio bytestream in the requested format (e.g. mp3, pcm, wav)."""
|
|
658
|
+
return self._json(_CREATE_AUDIO_SPEECH, "/audio/speech", params, _c.json_body(payload), include_response)
|
|
659
|
+
|
|
660
|
+
@_t.overload
|
|
661
|
+
def create_audio_transcriptions(self, *, payload: _T.CreateAudioTranscriptionsRequestJson, params: _T.CreateAudioTranscriptionsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateAudioTranscriptions200, _Errors]: ...
|
|
662
|
+
@_t.overload
|
|
663
|
+
def create_audio_transcriptions(self, *, payload: _T.CreateAudioTranscriptionsRequestJson, params: _T.CreateAudioTranscriptionsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateAudioTranscriptions200, _HttpClientResponse], _Errors]: ...
|
|
664
|
+
def create_audio_transcriptions(self, *, payload: _T.CreateAudioTranscriptionsRequestJson, params: _T.CreateAudioTranscriptionsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
665
|
+
"""Transcribes audio into text. Accepts base64-encoded audio input as JSON or an OpenAI-style multipart/form-data file upload, and returns the transcribed text."""
|
|
666
|
+
return self._json(_CREATE_AUDIO_TRANSCRIPTIONS, "/audio/transcriptions", params, _c.json_body(payload), include_response)
|
|
667
|
+
|
|
668
|
+
@_t.overload
|
|
669
|
+
def exchange_auth_code_for_api_key(self, *, payload: _T.ExchangeAuthCodeForAPIKeyRequestJson, params: _T.ExchangeAuthCodeForAPIKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ExchangeAuthCodeForAPIKey200, _Errors]: ...
|
|
670
|
+
@_t.overload
|
|
671
|
+
def exchange_auth_code_for_api_key(self, *, payload: _T.ExchangeAuthCodeForAPIKeyRequestJson, params: _T.ExchangeAuthCodeForAPIKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ExchangeAuthCodeForAPIKey200, _HttpClientResponse], _Errors]: ...
|
|
672
|
+
def exchange_auth_code_for_api_key(self, *, payload: _T.ExchangeAuthCodeForAPIKeyRequestJson, params: _T.ExchangeAuthCodeForAPIKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
673
|
+
"""Exchange an authorization code from the PKCE flow for a user-controlled API key"""
|
|
674
|
+
return self._json(_EXCHANGE_AUTH_CODE_FOR_API_KEY, "/auth/keys", params, _c.json_body(payload), include_response)
|
|
675
|
+
|
|
676
|
+
@_t.overload
|
|
677
|
+
def create_auth_keys_code(self, *, payload: _T.CreateAuthKeysCodeRequestJson, params: _T.CreateAuthKeysCodeParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateAuthKeysCode200, _Errors]: ...
|
|
678
|
+
@_t.overload
|
|
679
|
+
def create_auth_keys_code(self, *, payload: _T.CreateAuthKeysCodeRequestJson, params: _T.CreateAuthKeysCodeParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateAuthKeysCode200, _HttpClientResponse], _Errors]: ...
|
|
680
|
+
def create_auth_keys_code(self, *, payload: _T.CreateAuthKeysCodeRequestJson, params: _T.CreateAuthKeysCodeParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
681
|
+
"""Create an authorization code for the PKCE flow to generate a user-controlled API key"""
|
|
682
|
+
return self._json(_CREATE_AUTH_KEYS_CODE, "/auth/keys/code", params, _c.json_body(payload), include_response)
|
|
683
|
+
|
|
684
|
+
@_t.overload
|
|
685
|
+
def get_benchmarks(self, *, params: _T.GetBenchmarksParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetBenchmarks200, _Errors]: ...
|
|
686
|
+
@_t.overload
|
|
687
|
+
def get_benchmarks(self, *, params: _T.GetBenchmarksParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetBenchmarks200, _HttpClientResponse], _Errors]: ...
|
|
688
|
+
def get_benchmarks(self, *, params: _T.GetBenchmarksParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
689
|
+
"""Unified benchmark endpoint that aggregates scores from multiple benchmark sources (Artificial Analysis, Design Arena). Filter by source to reproduce the exact shapes from the legacy per-source endpoints, or use task_type to find models suited for specific workloads. Authenticate with any valid OpenRouter API key. Rate-limited to 30 requests/minute per key and 500 requests/day per account."""
|
|
690
|
+
return self._json(_GET_BENCHMARKS, "/benchmarks", params, None, include_response)
|
|
691
|
+
|
|
692
|
+
@_t.overload
|
|
693
|
+
def list_byok_keys(self, *, params: _T.ListBYOKKeysParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListBYOKKeys200, _Errors]: ...
|
|
694
|
+
@_t.overload
|
|
695
|
+
def list_byok_keys(self, *, params: _T.ListBYOKKeysParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListBYOKKeys200, _HttpClientResponse], _Errors]: ...
|
|
696
|
+
def list_byok_keys(self, *, params: _T.ListBYOKKeysParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
697
|
+
"""List the bring-your-own-key (BYOK) provider credentials for the authenticated entity's default workspace. Use the `workspace_id` query parameter to scope the result to a different workspace, or the `provider` query parameter to filter by upstream provider. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
698
|
+
return self._json(_LIST_BYOK_KEYS, "/byok", params, None, include_response)
|
|
699
|
+
|
|
700
|
+
@_t.overload
|
|
701
|
+
def create_byok_key(self, *, payload: _T.CreateBYOKKeyRequestJson, params: _T.CreateBYOKKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateBYOKKey201, _Errors]: ...
|
|
702
|
+
@_t.overload
|
|
703
|
+
def create_byok_key(self, *, payload: _T.CreateBYOKKeyRequestJson, params: _T.CreateBYOKKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateBYOKKey201, _HttpClientResponse], _Errors]: ...
|
|
704
|
+
def create_byok_key(self, *, payload: _T.CreateBYOKKeyRequestJson, params: _T.CreateBYOKKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
705
|
+
"""Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. Treat the raw key as write-only; it is never returned after creation. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
706
|
+
return self._json(_CREATE_BYOK_KEY, "/byok", params, _c.json_body(payload), include_response)
|
|
707
|
+
|
|
708
|
+
@_t.overload
|
|
709
|
+
def get_byok_key(self, id: str, *, params: _T.GetBYOKKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetBYOKKey200, _Errors]: ...
|
|
710
|
+
@_t.overload
|
|
711
|
+
def get_byok_key(self, id: str, *, params: _T.GetBYOKKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetBYOKKey200, _HttpClientResponse], _Errors]: ...
|
|
712
|
+
def get_byok_key(self, id: str, *, params: _T.GetBYOKKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
713
|
+
"""Get a single bring-your-own-key (BYOK) provider credential by its `id`. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
714
|
+
return self._json(_GET_BYOK_KEY, f"/byok/{id}", params, None, include_response)
|
|
715
|
+
|
|
716
|
+
@_t.overload
|
|
717
|
+
def delete_byok_key(self, id: str, *, params: _T.DeleteBYOKKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteBYOKKey200, _Errors]: ...
|
|
718
|
+
@_t.overload
|
|
719
|
+
def delete_byok_key(self, id: str, *, params: _T.DeleteBYOKKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteBYOKKey200, _HttpClientResponse], _Errors]: ...
|
|
720
|
+
def delete_byok_key(self, id: str, *, params: _T.DeleteBYOKKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
721
|
+
"""Delete (soft-delete) a bring-your-own-key (BYOK) provider credential by its `id`. The encrypted key material is wiped and the record is marked as deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
722
|
+
return self._json(_DELETE_BYOK_KEY, f"/byok/{id}", params, None, include_response)
|
|
723
|
+
|
|
724
|
+
@_t.overload
|
|
725
|
+
def update_byok_key(self, id: str, *, payload: _T.UpdateBYOKKeyRequestJson, params: _T.UpdateBYOKKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UpdateBYOKKey200, _Errors]: ...
|
|
726
|
+
@_t.overload
|
|
727
|
+
def update_byok_key(self, id: str, *, payload: _T.UpdateBYOKKeyRequestJson, params: _T.UpdateBYOKKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UpdateBYOKKey200, _HttpClientResponse], _Errors]: ...
|
|
728
|
+
def update_byok_key(self, id: str, *, payload: _T.UpdateBYOKKeyRequestJson, params: _T.UpdateBYOKKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
729
|
+
"""Update an existing bring-your-own-key (BYOK) provider credential by its `id`. Include the `key` field to rotate the raw provider API key in-place (the previous key material is overwritten). [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
730
|
+
return self._json(_UPDATE_BYOK_KEY, f"/byok/{id}", params, _c.json_body(payload), include_response)
|
|
731
|
+
|
|
732
|
+
@_t.overload
|
|
733
|
+
def send_chat_completion_request(self, *, payload: _T.SendChatCompletionRequestRequestJson, params: _T.SendChatCompletionRequestParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.SendChatCompletionRequest200, _Errors]: ...
|
|
734
|
+
@_t.overload
|
|
735
|
+
def send_chat_completion_request(self, *, payload: _T.SendChatCompletionRequestRequestJson, params: _T.SendChatCompletionRequestParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.SendChatCompletionRequest200, _HttpClientResponse], _Errors]: ...
|
|
736
|
+
def send_chat_completion_request(self, *, payload: _T.SendChatCompletionRequestRequestJson, params: _T.SendChatCompletionRequestParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
737
|
+
"""Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes."""
|
|
738
|
+
return self._json(_SEND_CHAT_COMPLETION_REQUEST, "/chat/completions", params, _c.json_body(payload), include_response)
|
|
739
|
+
|
|
740
|
+
def send_chat_completion_request_sse(self, *, payload: _T.SendChatCompletionRequestRequestJson, params: _T.SendChatCompletionRequestParams | None = None) -> _Stream[_sse.DataEvent[_T.SendChatCompletionRequest200Sse], _SseErrors]:
|
|
741
|
+
"""Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes."""
|
|
742
|
+
return self._sse(_SEND_CHAT_COMPLETION_REQUEST_SSE, "/chat/completions", params, _c.json_body(payload), SendChatCompletionRequest200Sse)
|
|
743
|
+
|
|
744
|
+
@_t.overload
|
|
745
|
+
def get_task_classifications(self, *, params: _T.GetTaskClassificationsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetTaskClassifications200, _Errors]: ...
|
|
746
|
+
@_t.overload
|
|
747
|
+
def get_task_classifications(self, *, params: _T.GetTaskClassificationsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetTaskClassifications200, _HttpClientResponse], _Errors]: ...
|
|
748
|
+
def get_task_classifications(self, *, params: _T.GetTaskClassificationsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
749
|
+
"""Returns the market-share breakdown of OpenRouter traffic by task classification
|
|
750
|
+
(e.g. code generation, web search, summarization) over a trailing time window.
|
|
751
|
+
|
|
752
|
+
Each classification reports its share of classified sampled requests (`usage_share`)
|
|
753
|
+
and classified sampled token volume (`token_share`) as fractions between 0 and 1.
|
|
754
|
+
The unclassified `other` bucket is excluded. Absolute volumes are not exposed
|
|
755
|
+
because the underlying data is sampled.
|
|
756
|
+
|
|
757
|
+
Each classification also includes a `models` array listing the top models by
|
|
758
|
+
request volume within that classification, with their within-tag usage and token shares.
|
|
759
|
+
|
|
760
|
+
Classifications are grouped into macro-categories (Code, Data, Agent, General)
|
|
761
|
+
with aggregate shares provided for each.
|
|
762
|
+
|
|
763
|
+
Authenticate with any valid OpenRouter API key (same key used for inference).
|
|
764
|
+
Rate-limited to 30 requests/minute per key and 500 requests/day per account.
|
|
765
|
+
|
|
766
|
+
When republishing or quoting this data, cite as:
|
|
767
|
+
"Source: OpenRouter (openrouter.ai/rankings), as of {as_of}." """
|
|
768
|
+
return self._json(_GET_TASK_CLASSIFICATIONS, "/classifications/task", params, None, include_response)
|
|
769
|
+
|
|
770
|
+
@_t.overload
|
|
771
|
+
def get_credits(self, *, params: _T.GetCreditsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetCredits200, _Errors]: ...
|
|
772
|
+
@_t.overload
|
|
773
|
+
def get_credits(self, *, params: _T.GetCreditsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetCredits200, _HttpClientResponse], _Errors]: ...
|
|
774
|
+
def get_credits(self, *, params: _T.GetCreditsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
775
|
+
"""Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
776
|
+
return self._json(_GET_CREDITS, "/credits", params, None, include_response)
|
|
777
|
+
|
|
778
|
+
@_t.overload
|
|
779
|
+
def create_coinbase_charge(self, *, params: _T.CreateCoinbaseChargeParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[None, _Errors]: ...
|
|
780
|
+
@_t.overload
|
|
781
|
+
def create_coinbase_charge(self, *, params: _T.CreateCoinbaseChargeParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[None, _HttpClientResponse], _Errors]: ...
|
|
782
|
+
def create_coinbase_charge(self, *, params: _T.CreateCoinbaseChargeParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
783
|
+
"""Deprecated. The Coinbase APIs used by this endpoint have been deprecated, so Coinbase Commerce charges have been removed. Use the web credits purchase flow instead."""
|
|
784
|
+
return self._json(_CREATE_COINBASE_CHARGE, "/credits/coinbase", params, None, include_response)
|
|
785
|
+
|
|
786
|
+
@_t.overload
|
|
787
|
+
def get_app_rankings(self, *, params: _T.GetAppRankingsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetAppRankings200, _Errors]: ...
|
|
788
|
+
@_t.overload
|
|
789
|
+
def get_app_rankings(self, *, params: _T.GetAppRankingsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetAppRankings200, _HttpClientResponse], _Errors]: ...
|
|
790
|
+
def get_app_rankings(self, *, params: _T.GetAppRankingsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
791
|
+
"""Returns the top public apps on OpenRouter ranked by token usage inside the requested
|
|
792
|
+
date window, matching the public apps marketplace on openrouter.ai/apps. Token totals
|
|
793
|
+
are `prompt_tokens + completion_tokens`; hidden and private apps are excluded and
|
|
794
|
+
traffic from related app aliases is merged into the canonical visible app.
|
|
795
|
+
|
|
796
|
+
`sort=popular` (default) ranks by total token volume inside the window.
|
|
797
|
+
`sort=trending` ranks by absolute excess token growth: window volume minus the average
|
|
798
|
+
volume of the three equal-length periods immediately preceding the window. Apps with
|
|
799
|
+
no excess growth are omitted, so `trending` may return fewer than `limit` rows.
|
|
800
|
+
|
|
801
|
+
Filter with `category` (marketplace category group, e.g. `coding`) or `subcategory`
|
|
802
|
+
(e.g. `cli-agent`). Ranks are re-numbered 1..N after filtering. Page with `offset` —
|
|
803
|
+
`rank` stays absolute, so the first row of `offset=50` is `rank: 51`.
|
|
804
|
+
|
|
805
|
+
Authenticate with any valid OpenRouter API key (same key used for inference).
|
|
806
|
+
Rate-limited to 30 requests/minute per key and 500 requests/day per account.
|
|
807
|
+
|
|
808
|
+
When republishing or quoting this dataset, OpenRouter must be cited as:
|
|
809
|
+
"Source: OpenRouter (openrouter.ai/apps), as of {as_of}."
|
|
810
|
+
|
|
811
|
+
Token counts come from each upstream provider's own tokenizer, so a token attributed
|
|
812
|
+
to one app is not directly comparable to a token attributed to another app whose
|
|
813
|
+
traffic flows through a different provider."""
|
|
814
|
+
return self._json(_GET_APP_RANKINGS, "/datasets/app-rankings", params, None, include_response)
|
|
815
|
+
|
|
816
|
+
@_t.overload
|
|
817
|
+
def get_rankings_daily(self, *, params: _T.GetRankingsDailyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetRankingsDaily200, _Errors]: ...
|
|
818
|
+
@_t.overload
|
|
819
|
+
def get_rankings_daily(self, *, params: _T.GetRankingsDailyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetRankingsDaily200, _HttpClientResponse], _Errors]: ...
|
|
820
|
+
def get_rankings_daily(self, *, params: _T.GetRankingsDailyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
821
|
+
"""Returns the top 50 public models per day by total token usage on OpenRouter, plus a
|
|
822
|
+
single aggregated `other` row per day that sums every model outside that top 50.
|
|
823
|
+
Token totals are `prompt_tokens + completion_tokens`, matching the public rankings
|
|
824
|
+
chart on openrouter.ai/rankings.
|
|
825
|
+
|
|
826
|
+
Each row is a distinct `(date, model_permaslug)` pair. The `other` row uses the
|
|
827
|
+
reserved permaslug `other` and is always returned last within its date, so callers
|
|
828
|
+
can compute `top-50 traffic / total daily traffic` without a second request.
|
|
829
|
+
|
|
830
|
+
Optional filters slice the dataset. `period` (`day`/`week`/`month`) sets the time
|
|
831
|
+
grain. `modality` and `context_bucket` narrow the exact dataset by output/input
|
|
832
|
+
modality (or tool-calling activity) and request context length. `category` and
|
|
833
|
+
`language_type` instead read a sampled, upsampled dataset whose `total_tokens` are
|
|
834
|
+
weekly-grain estimates — they cannot be combined with each other or with the exact
|
|
835
|
+
filters, and reject `period=day` with a 400.
|
|
836
|
+
|
|
837
|
+
Authenticate with any valid OpenRouter API key (same key used for inference).
|
|
838
|
+
Rate-limited to 30 requests/minute per key and 500 requests/day per account.
|
|
839
|
+
|
|
840
|
+
When republishing or quoting this dataset, OpenRouter must be cited as:
|
|
841
|
+
"Source: OpenRouter (openrouter.ai/rankings), as of {as_of}."
|
|
842
|
+
|
|
843
|
+
Token counts come from each upstream provider's own tokenizer (Anthropic counts
|
|
844
|
+
are as reported by Anthropic, OpenAI counts are as reported by OpenAI, etc.), so
|
|
845
|
+
a token in one row is not directly comparable to a token in another row from a
|
|
846
|
+
different provider."""
|
|
847
|
+
return self._json(_GET_RANKINGS_DAILY, "/datasets/rankings-daily", params, None, include_response)
|
|
848
|
+
|
|
849
|
+
@_t.overload
|
|
850
|
+
def create_embeddings(self, *, payload: _T.CreateEmbeddingsRequestJson, params: _T.CreateEmbeddingsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateEmbeddings200, _Errors]: ...
|
|
851
|
+
@_t.overload
|
|
852
|
+
def create_embeddings(self, *, payload: _T.CreateEmbeddingsRequestJson, params: _T.CreateEmbeddingsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateEmbeddings200, _HttpClientResponse], _Errors]: ...
|
|
853
|
+
def create_embeddings(self, *, payload: _T.CreateEmbeddingsRequestJson, params: _T.CreateEmbeddingsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
854
|
+
"""Submits an embedding request to the embeddings router"""
|
|
855
|
+
return self._json(_CREATE_EMBEDDINGS, "/embeddings", params, _c.json_body(payload), include_response)
|
|
856
|
+
|
|
857
|
+
def create_embeddings_sse(self, *, payload: _T.CreateEmbeddingsRequestJson, params: _T.CreateEmbeddingsParams | None = None) -> _Stream[_sse.DataEvent[_T.CreateEmbeddings200Sse], _SseErrors]:
|
|
858
|
+
"""Submits an embedding request to the embeddings router"""
|
|
859
|
+
return self._sse(_CREATE_EMBEDDINGS_SSE, "/embeddings", params, _c.json_body(payload), CreateEmbeddings200Sse)
|
|
860
|
+
|
|
861
|
+
@_t.overload
|
|
862
|
+
def list_embeddings_models(self, *, params: _T.ListEmbeddingsModelsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListEmbeddingsModels200, _Errors]: ...
|
|
863
|
+
@_t.overload
|
|
864
|
+
def list_embeddings_models(self, *, params: _T.ListEmbeddingsModelsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListEmbeddingsModels200, _HttpClientResponse], _Errors]: ...
|
|
865
|
+
def list_embeddings_models(self, *, params: _T.ListEmbeddingsModelsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
866
|
+
"""Returns a list of all available embeddings models and their properties"""
|
|
867
|
+
return self._json(_LIST_EMBEDDINGS_MODELS, "/embeddings/models", params, None, include_response)
|
|
868
|
+
|
|
869
|
+
@_t.overload
|
|
870
|
+
def list_endpoints_zdr(self, *, params: _T.ListEndpointsZdrParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListEndpointsZdr200, _Errors]: ...
|
|
871
|
+
@_t.overload
|
|
872
|
+
def list_endpoints_zdr(self, *, params: _T.ListEndpointsZdrParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListEndpointsZdr200, _HttpClientResponse], _Errors]: ...
|
|
873
|
+
def list_endpoints_zdr(self, *, params: _T.ListEndpointsZdrParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
874
|
+
"""Preview the impact of ZDR on the available endpoints"""
|
|
875
|
+
return self._json(_LIST_ENDPOINTS_ZDR, "/endpoints/zdr", params, None, include_response)
|
|
876
|
+
|
|
877
|
+
@_t.overload
|
|
878
|
+
def list_files(self, *, params: _T.ListFilesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListFiles200, _Errors]: ...
|
|
879
|
+
@_t.overload
|
|
880
|
+
def list_files(self, *, params: _T.ListFilesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListFiles200, _HttpClientResponse], _Errors]: ...
|
|
881
|
+
def list_files(self, *, params: _T.ListFilesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
882
|
+
"""Lists files belonging to the workspace of the authenticating API key."""
|
|
883
|
+
return self._json(_LIST_FILES, "/files", params, None, include_response)
|
|
884
|
+
|
|
885
|
+
@_t.overload
|
|
886
|
+
def upload_file(self, *, payload: _T.UploadFileRequestFormData, params: _T.UploadFileParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UploadFile200, _Errors]: ...
|
|
887
|
+
@_t.overload
|
|
888
|
+
def upload_file(self, *, payload: _T.UploadFileRequestFormData, params: _T.UploadFileParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UploadFile200, _HttpClientResponse], _Errors]: ...
|
|
889
|
+
def upload_file(self, *, payload: _T.UploadFileRequestFormData, params: _T.UploadFileParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
890
|
+
"""Uploads a file to be referenced in future API calls. The file is stored under the workspace of the authenticating API key. Maximum file size: 100 MB."""
|
|
891
|
+
return self._json(_UPLOAD_FILE, "/files", params, _c.form_body(payload), include_response)
|
|
892
|
+
|
|
893
|
+
@_t.overload
|
|
894
|
+
def get_file_metadata(self, file_id: str, *, params: _T.GetFileMetadataParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetFileMetadata200, _Errors]: ...
|
|
895
|
+
@_t.overload
|
|
896
|
+
def get_file_metadata(self, file_id: str, *, params: _T.GetFileMetadataParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetFileMetadata200, _HttpClientResponse], _Errors]: ...
|
|
897
|
+
def get_file_metadata(self, file_id: str, *, params: _T.GetFileMetadataParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
898
|
+
"""Retrieves metadata for a single file owned by the requesting workspace."""
|
|
899
|
+
return self._json(_GET_FILE_METADATA, f"/files/{file_id}", params, None, include_response)
|
|
900
|
+
|
|
901
|
+
@_t.overload
|
|
902
|
+
def delete_file(self, file_id: str, *, params: _T.DeleteFileParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteFile200, _Errors]: ...
|
|
903
|
+
@_t.overload
|
|
904
|
+
def delete_file(self, file_id: str, *, params: _T.DeleteFileParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteFile200, _HttpClientResponse], _Errors]: ...
|
|
905
|
+
def delete_file(self, file_id: str, *, params: _T.DeleteFileParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
906
|
+
"""Deletes a file owned by the requesting workspace. Deletion is irreversible."""
|
|
907
|
+
return self._json(_DELETE_FILE, f"/files/{file_id}", params, None, include_response)
|
|
908
|
+
|
|
909
|
+
@_t.overload
|
|
910
|
+
def download_file_content(self, file_id: str, *, params: _T.DownloadFileContentParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[None, _Errors]: ...
|
|
911
|
+
@_t.overload
|
|
912
|
+
def download_file_content(self, file_id: str, *, params: _T.DownloadFileContentParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[None, _HttpClientResponse], _Errors]: ...
|
|
913
|
+
def download_file_content(self, file_id: str, *, params: _T.DownloadFileContentParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
914
|
+
"""Downloads the raw bytes of a file. Only files created server-side are downloadable; uploaded files return 400."""
|
|
915
|
+
return self._json(_DOWNLOAD_FILE_CONTENT, f"/files/{file_id}/content", params, None, include_response)
|
|
916
|
+
|
|
917
|
+
def download_file_content_stream(self, file_id: str, *, params: _T.DownloadFileContentParams | None = None) -> _Stream[bytes, _HttpClientError]:
|
|
918
|
+
"""Downloads the raw bytes of a file. Only files created server-side are downloadable; uploaded files return 400."""
|
|
919
|
+
return self._binary(_DOWNLOAD_FILE_CONTENT_STREAM, f"/files/{file_id}/content", params, None)
|
|
920
|
+
|
|
921
|
+
@_t.overload
|
|
922
|
+
def get_generation(self, *, params: _T.GetGenerationParams, include_response: _t.Literal[False] = False) -> _Effect[_T.GetGeneration200, _Errors]: ...
|
|
923
|
+
@_t.overload
|
|
924
|
+
def get_generation(self, *, params: _T.GetGenerationParams, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetGeneration200, _HttpClientResponse], _Errors]: ...
|
|
925
|
+
def get_generation(self, *, params: _T.GetGenerationParams, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
926
|
+
"""Get request & usage metadata for a generation"""
|
|
927
|
+
return self._json(_GET_GENERATION, "/generation", params, None, include_response)
|
|
928
|
+
|
|
929
|
+
@_t.overload
|
|
930
|
+
def list_generation_content(self, *, params: _T.ListGenerationContentParams, include_response: _t.Literal[False] = False) -> _Effect[_T.ListGenerationContent200, _Errors]: ...
|
|
931
|
+
@_t.overload
|
|
932
|
+
def list_generation_content(self, *, params: _T.ListGenerationContentParams, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListGenerationContent200, _HttpClientResponse], _Errors]: ...
|
|
933
|
+
def list_generation_content(self, *, params: _T.ListGenerationContentParams, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
934
|
+
"""Get stored prompt and completion content for a generation"""
|
|
935
|
+
return self._json(_LIST_GENERATION_CONTENT, "/generation/content", params, None, include_response)
|
|
936
|
+
|
|
937
|
+
@_t.overload
|
|
938
|
+
def submit_generation_feedback(self, *, payload: _T.SubmitGenerationFeedbackRequestJson, params: _T.SubmitGenerationFeedbackParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.SubmitGenerationFeedback200, _Errors]: ...
|
|
939
|
+
@_t.overload
|
|
940
|
+
def submit_generation_feedback(self, *, payload: _T.SubmitGenerationFeedbackRequestJson, params: _T.SubmitGenerationFeedbackParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.SubmitGenerationFeedback200, _HttpClientResponse], _Errors]: ...
|
|
941
|
+
def submit_generation_feedback(self, *, payload: _T.SubmitGenerationFeedbackRequestJson, params: _T.SubmitGenerationFeedbackParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
942
|
+
"""Submit structured feedback on a generation the authenticated user made. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
943
|
+
return self._json(_SUBMIT_GENERATION_FEEDBACK, "/generation/feedback", params, _c.json_body(payload), include_response)
|
|
944
|
+
|
|
945
|
+
@_t.overload
|
|
946
|
+
def list_guardrails(self, *, params: _T.ListGuardrailsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListGuardrails200, _Errors]: ...
|
|
947
|
+
@_t.overload
|
|
948
|
+
def list_guardrails(self, *, params: _T.ListGuardrailsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListGuardrails200, _HttpClientResponse], _Errors]: ...
|
|
949
|
+
def list_guardrails(self, *, params: _T.ListGuardrailsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
950
|
+
"""List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
951
|
+
return self._json(_LIST_GUARDRAILS, "/guardrails", params, None, include_response)
|
|
952
|
+
|
|
953
|
+
@_t.overload
|
|
954
|
+
def create_guardrail(self, *, payload: _T.CreateGuardrailRequestJson, params: _T.CreateGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateGuardrail201, _Errors]: ...
|
|
955
|
+
@_t.overload
|
|
956
|
+
def create_guardrail(self, *, payload: _T.CreateGuardrailRequestJson, params: _T.CreateGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateGuardrail201, _HttpClientResponse], _Errors]: ...
|
|
957
|
+
def create_guardrail(self, *, payload: _T.CreateGuardrailRequestJson, params: _T.CreateGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
958
|
+
"""Create a new guardrail for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
959
|
+
return self._json(_CREATE_GUARDRAIL, "/guardrails", params, _c.json_body(payload), include_response)
|
|
960
|
+
|
|
961
|
+
@_t.overload
|
|
962
|
+
def get_guardrail(self, id: str, *, params: _T.GetGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetGuardrail200, _Errors]: ...
|
|
963
|
+
@_t.overload
|
|
964
|
+
def get_guardrail(self, id: str, *, params: _T.GetGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
965
|
+
def get_guardrail(self, id: str, *, params: _T.GetGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
966
|
+
"""Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
967
|
+
return self._json(_GET_GUARDRAIL, f"/guardrails/{id}", params, None, include_response)
|
|
968
|
+
|
|
969
|
+
@_t.overload
|
|
970
|
+
def delete_guardrail(self, id: str, *, params: _T.DeleteGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteGuardrail200, _Errors]: ...
|
|
971
|
+
@_t.overload
|
|
972
|
+
def delete_guardrail(self, id: str, *, params: _T.DeleteGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
973
|
+
def delete_guardrail(self, id: str, *, params: _T.DeleteGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
974
|
+
"""Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
975
|
+
return self._json(_DELETE_GUARDRAIL, f"/guardrails/{id}", params, None, include_response)
|
|
976
|
+
|
|
977
|
+
@_t.overload
|
|
978
|
+
def update_guardrail(self, id: str, *, payload: _T.UpdateGuardrailRequestJson, params: _T.UpdateGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UpdateGuardrail200, _Errors]: ...
|
|
979
|
+
@_t.overload
|
|
980
|
+
def update_guardrail(self, id: str, *, payload: _T.UpdateGuardrailRequestJson, params: _T.UpdateGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UpdateGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
981
|
+
def update_guardrail(self, id: str, *, payload: _T.UpdateGuardrailRequestJson, params: _T.UpdateGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
982
|
+
"""Update an existing guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
983
|
+
return self._json(_UPDATE_GUARDRAIL, f"/guardrails/{id}", params, _c.json_body(payload), include_response)
|
|
984
|
+
|
|
985
|
+
@_t.overload
|
|
986
|
+
def list_guardrail_key_assignments(self, id: str, *, params: _T.ListGuardrailKeyAssignmentsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListGuardrailKeyAssignments200, _Errors]: ...
|
|
987
|
+
@_t.overload
|
|
988
|
+
def list_guardrail_key_assignments(self, id: str, *, params: _T.ListGuardrailKeyAssignmentsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListGuardrailKeyAssignments200, _HttpClientResponse], _Errors]: ...
|
|
989
|
+
def list_guardrail_key_assignments(self, id: str, *, params: _T.ListGuardrailKeyAssignmentsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
990
|
+
"""List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
991
|
+
return self._json(_LIST_GUARDRAIL_KEY_ASSIGNMENTS, f"/guardrails/{id}/assignments/keys", params, None, include_response)
|
|
992
|
+
|
|
993
|
+
@_t.overload
|
|
994
|
+
def bulk_assign_keys_to_guardrail(self, id: str, *, payload: _T.BulkAssignKeysToGuardrailRequestJson, params: _T.BulkAssignKeysToGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.BulkAssignKeysToGuardrail200, _Errors]: ...
|
|
995
|
+
@_t.overload
|
|
996
|
+
def bulk_assign_keys_to_guardrail(self, id: str, *, payload: _T.BulkAssignKeysToGuardrailRequestJson, params: _T.BulkAssignKeysToGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.BulkAssignKeysToGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
997
|
+
def bulk_assign_keys_to_guardrail(self, id: str, *, payload: _T.BulkAssignKeysToGuardrailRequestJson, params: _T.BulkAssignKeysToGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
998
|
+
"""Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
999
|
+
return self._json(_BULK_ASSIGN_KEYS_TO_GUARDRAIL, f"/guardrails/{id}/assignments/keys", params, _c.json_body(payload), include_response)
|
|
1000
|
+
|
|
1001
|
+
@_t.overload
|
|
1002
|
+
def bulk_unassign_keys_from_guardrail(self, id: str, *, payload: _T.BulkUnassignKeysFromGuardrailRequestJson, params: _T.BulkUnassignKeysFromGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.BulkUnassignKeysFromGuardrail200, _Errors]: ...
|
|
1003
|
+
@_t.overload
|
|
1004
|
+
def bulk_unassign_keys_from_guardrail(self, id: str, *, payload: _T.BulkUnassignKeysFromGuardrailRequestJson, params: _T.BulkUnassignKeysFromGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.BulkUnassignKeysFromGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
1005
|
+
def bulk_unassign_keys_from_guardrail(self, id: str, *, payload: _T.BulkUnassignKeysFromGuardrailRequestJson, params: _T.BulkUnassignKeysFromGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1006
|
+
"""Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1007
|
+
return self._json(_BULK_UNASSIGN_KEYS_FROM_GUARDRAIL, f"/guardrails/{id}/assignments/keys/remove", params, _c.json_body(payload), include_response)
|
|
1008
|
+
|
|
1009
|
+
@_t.overload
|
|
1010
|
+
def list_guardrail_member_assignments(self, id: str, *, params: _T.ListGuardrailMemberAssignmentsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListGuardrailMemberAssignments200, _Errors]: ...
|
|
1011
|
+
@_t.overload
|
|
1012
|
+
def list_guardrail_member_assignments(self, id: str, *, params: _T.ListGuardrailMemberAssignmentsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListGuardrailMemberAssignments200, _HttpClientResponse], _Errors]: ...
|
|
1013
|
+
def list_guardrail_member_assignments(self, id: str, *, params: _T.ListGuardrailMemberAssignmentsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1014
|
+
"""List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1015
|
+
return self._json(_LIST_GUARDRAIL_MEMBER_ASSIGNMENTS, f"/guardrails/{id}/assignments/members", params, None, include_response)
|
|
1016
|
+
|
|
1017
|
+
@_t.overload
|
|
1018
|
+
def bulk_assign_members_to_guardrail(self, id: str, *, payload: _T.BulkAssignMembersToGuardrailRequestJson, params: _T.BulkAssignMembersToGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.BulkAssignMembersToGuardrail200, _Errors]: ...
|
|
1019
|
+
@_t.overload
|
|
1020
|
+
def bulk_assign_members_to_guardrail(self, id: str, *, payload: _T.BulkAssignMembersToGuardrailRequestJson, params: _T.BulkAssignMembersToGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.BulkAssignMembersToGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
1021
|
+
def bulk_assign_members_to_guardrail(self, id: str, *, payload: _T.BulkAssignMembersToGuardrailRequestJson, params: _T.BulkAssignMembersToGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1022
|
+
"""Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1023
|
+
return self._json(_BULK_ASSIGN_MEMBERS_TO_GUARDRAIL, f"/guardrails/{id}/assignments/members", params, _c.json_body(payload), include_response)
|
|
1024
|
+
|
|
1025
|
+
@_t.overload
|
|
1026
|
+
def bulk_unassign_members_from_guardrail(self, id: str, *, payload: _T.BulkUnassignMembersFromGuardrailRequestJson, params: _T.BulkUnassignMembersFromGuardrailParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.BulkUnassignMembersFromGuardrail200, _Errors]: ...
|
|
1027
|
+
@_t.overload
|
|
1028
|
+
def bulk_unassign_members_from_guardrail(self, id: str, *, payload: _T.BulkUnassignMembersFromGuardrailRequestJson, params: _T.BulkUnassignMembersFromGuardrailParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.BulkUnassignMembersFromGuardrail200, _HttpClientResponse], _Errors]: ...
|
|
1029
|
+
def bulk_unassign_members_from_guardrail(self, id: str, *, payload: _T.BulkUnassignMembersFromGuardrailRequestJson, params: _T.BulkUnassignMembersFromGuardrailParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1030
|
+
"""Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1031
|
+
return self._json(_BULK_UNASSIGN_MEMBERS_FROM_GUARDRAIL, f"/guardrails/{id}/assignments/members/remove", params, _c.json_body(payload), include_response)
|
|
1032
|
+
|
|
1033
|
+
@_t.overload
|
|
1034
|
+
def list_key_assignments(self, *, params: _T.ListKeyAssignmentsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListKeyAssignments200, _Errors]: ...
|
|
1035
|
+
@_t.overload
|
|
1036
|
+
def list_key_assignments(self, *, params: _T.ListKeyAssignmentsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListKeyAssignments200, _HttpClientResponse], _Errors]: ...
|
|
1037
|
+
def list_key_assignments(self, *, params: _T.ListKeyAssignmentsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1038
|
+
"""List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1039
|
+
return self._json(_LIST_KEY_ASSIGNMENTS, "/guardrails/assignments/keys", params, None, include_response)
|
|
1040
|
+
|
|
1041
|
+
@_t.overload
|
|
1042
|
+
def list_member_assignments(self, *, params: _T.ListMemberAssignmentsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListMemberAssignments200, _Errors]: ...
|
|
1043
|
+
@_t.overload
|
|
1044
|
+
def list_member_assignments(self, *, params: _T.ListMemberAssignmentsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListMemberAssignments200, _HttpClientResponse], _Errors]: ...
|
|
1045
|
+
def list_member_assignments(self, *, params: _T.ListMemberAssignmentsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1046
|
+
"""List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1047
|
+
return self._json(_LIST_MEMBER_ASSIGNMENTS, "/guardrails/assignments/members", params, None, include_response)
|
|
1048
|
+
|
|
1049
|
+
@_t.overload
|
|
1050
|
+
def create_images(self, *, payload: _T.CreateImagesRequestJson, params: _T.CreateImagesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateImages200, _Errors]: ...
|
|
1051
|
+
@_t.overload
|
|
1052
|
+
def create_images(self, *, payload: _T.CreateImagesRequestJson, params: _T.CreateImagesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateImages200, _HttpClientResponse], _Errors]: ...
|
|
1053
|
+
def create_images(self, *, payload: _T.CreateImagesRequestJson, params: _T.CreateImagesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1054
|
+
"""Generates an image from a text prompt via the image generation router"""
|
|
1055
|
+
return self._json(_CREATE_IMAGES, "/images", params, _c.json_body(payload), include_response)
|
|
1056
|
+
|
|
1057
|
+
def create_images_sse(self, *, payload: _T.CreateImagesRequestJson, params: _T.CreateImagesParams | None = None) -> _Stream[_sse.DataEvent[_T.CreateImages200Sse], _SseErrors]:
|
|
1058
|
+
"""Generates an image from a text prompt via the image generation router"""
|
|
1059
|
+
return self._sse(_CREATE_IMAGES_SSE, "/images", params, _c.json_body(payload), CreateImages200Sse)
|
|
1060
|
+
|
|
1061
|
+
@_t.overload
|
|
1062
|
+
def list_image_models(self, *, params: _T.ListImageModelsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListImageModels200, _Errors]: ...
|
|
1063
|
+
@_t.overload
|
|
1064
|
+
def list_image_models(self, *, params: _T.ListImageModelsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListImageModels200, _HttpClientResponse], _Errors]: ...
|
|
1065
|
+
def list_image_models(self, *, params: _T.ListImageModelsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1066
|
+
"""Lists every image generation model with its top-level supported-parameter superset and a URL to its full per-endpoint records."""
|
|
1067
|
+
return self._json(_LIST_IMAGE_MODELS, "/images/models", params, None, include_response)
|
|
1068
|
+
|
|
1069
|
+
@_t.overload
|
|
1070
|
+
def list_image_model_endpoints(self, author: str, slug: str, *, params: _T.ListImageModelEndpointsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListImageModelEndpoints200, _Errors]: ...
|
|
1071
|
+
@_t.overload
|
|
1072
|
+
def list_image_model_endpoints(self, author: str, slug: str, *, params: _T.ListImageModelEndpointsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListImageModelEndpoints200, _HttpClientResponse], _Errors]: ...
|
|
1073
|
+
def list_image_model_endpoints(self, author: str, slug: str, *, params: _T.ListImageModelEndpointsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1074
|
+
"""Returns the full per-endpoint records for an image model: each endpoint's definitive supported parameters, pricing, and passthrough allowlist."""
|
|
1075
|
+
return self._json(_LIST_IMAGE_MODEL_ENDPOINTS, f"/images/models/{author}/{slug}/endpoints", params, None, include_response)
|
|
1076
|
+
|
|
1077
|
+
@_t.overload
|
|
1078
|
+
def get_current_key(self, *, params: _T.GetCurrentKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetCurrentKey200, _Errors]: ...
|
|
1079
|
+
@_t.overload
|
|
1080
|
+
def get_current_key(self, *, params: _T.GetCurrentKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetCurrentKey200, _HttpClientResponse], _Errors]: ...
|
|
1081
|
+
def get_current_key(self, *, params: _T.GetCurrentKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1082
|
+
"""Get information on the API key associated with the current authentication session"""
|
|
1083
|
+
return self._json(_GET_CURRENT_KEY, "/key", params, None, include_response)
|
|
1084
|
+
|
|
1085
|
+
@_t.overload
|
|
1086
|
+
def list(self, *, params: _T.ListParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.List200, _Errors]: ...
|
|
1087
|
+
@_t.overload
|
|
1088
|
+
def list(self, *, params: _T.ListParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.List200, _HttpClientResponse], _Errors]: ...
|
|
1089
|
+
def list(self, *, params: _T.ListParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1090
|
+
"""List all API keys for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1091
|
+
return self._json(_LIST, "/keys", params, None, include_response)
|
|
1092
|
+
|
|
1093
|
+
@_t.overload
|
|
1094
|
+
def create_keys(self, *, payload: _T.CreateKeysRequestJson, params: _T.CreateKeysParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateKeys201, _Errors]: ...
|
|
1095
|
+
@_t.overload
|
|
1096
|
+
def create_keys(self, *, payload: _T.CreateKeysRequestJson, params: _T.CreateKeysParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateKeys201, _HttpClientResponse], _Errors]: ...
|
|
1097
|
+
def create_keys(self, *, payload: _T.CreateKeysRequestJson, params: _T.CreateKeysParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1098
|
+
"""Create a new API key for the authenticated user. The plaintext `key` is returned only in this response. Treat it as a write-only, sensitive value; it cannot be retrieved later. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1099
|
+
return self._json(_CREATE_KEYS, "/keys", params, _c.json_body(payload), include_response)
|
|
1100
|
+
|
|
1101
|
+
@_t.overload
|
|
1102
|
+
def get_key(self, hash: str, *, params: _T.GetKeyParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetKey200, _Errors]: ...
|
|
1103
|
+
@_t.overload
|
|
1104
|
+
def get_key(self, hash: str, *, params: _T.GetKeyParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetKey200, _HttpClientResponse], _Errors]: ...
|
|
1105
|
+
def get_key(self, hash: str, *, params: _T.GetKeyParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1106
|
+
"""Get a single API key by hash. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1107
|
+
return self._json(_GET_KEY, f"/keys/{hash}", params, None, include_response)
|
|
1108
|
+
|
|
1109
|
+
@_t.overload
|
|
1110
|
+
def delete_keys(self, hash: str, *, params: _T.DeleteKeysParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteKeys200, _Errors]: ...
|
|
1111
|
+
@_t.overload
|
|
1112
|
+
def delete_keys(self, hash: str, *, params: _T.DeleteKeysParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteKeys200, _HttpClientResponse], _Errors]: ...
|
|
1113
|
+
def delete_keys(self, hash: str, *, params: _T.DeleteKeysParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1114
|
+
"""Delete an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1115
|
+
return self._json(_DELETE_KEYS, f"/keys/{hash}", params, None, include_response)
|
|
1116
|
+
|
|
1117
|
+
@_t.overload
|
|
1118
|
+
def update_keys(self, hash: str, *, payload: _T.UpdateKeysRequestJson, params: _T.UpdateKeysParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UpdateKeys200, _Errors]: ...
|
|
1119
|
+
@_t.overload
|
|
1120
|
+
def update_keys(self, hash: str, *, payload: _T.UpdateKeysRequestJson, params: _T.UpdateKeysParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UpdateKeys200, _HttpClientResponse], _Errors]: ...
|
|
1121
|
+
def update_keys(self, hash: str, *, payload: _T.UpdateKeysRequestJson, params: _T.UpdateKeysParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1122
|
+
"""Update an existing API key. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1123
|
+
return self._json(_UPDATE_KEYS, f"/keys/{hash}", params, _c.json_body(payload), include_response)
|
|
1124
|
+
|
|
1125
|
+
@_t.overload
|
|
1126
|
+
def create_messages(self, *, payload: _T.CreateMessagesRequestJson, params: _T.CreateMessagesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateMessages200, _Errors]: ...
|
|
1127
|
+
@_t.overload
|
|
1128
|
+
def create_messages(self, *, payload: _T.CreateMessagesRequestJson, params: _T.CreateMessagesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateMessages200, _HttpClientResponse], _Errors]: ...
|
|
1129
|
+
def create_messages(self, *, payload: _T.CreateMessagesRequestJson, params: _T.CreateMessagesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1130
|
+
"""Creates a message using the Anthropic Messages API format. Supports text, images, PDFs, tools, and extended thinking."""
|
|
1131
|
+
return self._json(_CREATE_MESSAGES, "/messages", params, _c.json_body(payload), include_response)
|
|
1132
|
+
|
|
1133
|
+
def create_messages_sse(self, *, payload: _T.CreateMessagesRequestJson, params: _T.CreateMessagesParams | None = None) -> _Stream[_sse.DataEvent[_T.CreateMessages200Sse], _SseErrors]:
|
|
1134
|
+
"""Creates a message using the Anthropic Messages API format. Supports text, images, PDFs, tools, and extended thinking."""
|
|
1135
|
+
return self._sse(_CREATE_MESSAGES_SSE, "/messages", params, _c.json_body(payload), CreateMessages200Sse)
|
|
1136
|
+
|
|
1137
|
+
@_t.overload
|
|
1138
|
+
def get_model(self, author: str, slug: str, *, params: _T.GetModelParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetModel200, _Errors]: ...
|
|
1139
|
+
@_t.overload
|
|
1140
|
+
def get_model(self, author: str, slug: str, *, params: _T.GetModelParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetModel200, _HttpClientResponse], _Errors]: ...
|
|
1141
|
+
def get_model(self, author: str, slug: str, *, params: _T.GetModelParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1142
|
+
"""Returns full details for a single model identified by its author and slug (e.g. openai/gpt-4). Supports variant suffixes (e.g. openai/gpt-4:free) and resolves known slug aliases."""
|
|
1143
|
+
return self._json(_GET_MODEL, f"/model/{author}/{slug}", params, None, include_response)
|
|
1144
|
+
|
|
1145
|
+
@_t.overload
|
|
1146
|
+
def get_models(self, *, params: _T.GetModelsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetModels200, _Errors]: ...
|
|
1147
|
+
@_t.overload
|
|
1148
|
+
def get_models(self, *, params: _T.GetModelsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetModels200, _HttpClientResponse], _Errors]: ...
|
|
1149
|
+
def get_models(self, *, params: _T.GetModelsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1150
|
+
"""List all models and their properties"""
|
|
1151
|
+
return self._json(_GET_MODELS, "/models", params, None, include_response)
|
|
1152
|
+
|
|
1153
|
+
@_t.overload
|
|
1154
|
+
def list_endpoints(self, author: str, slug: str, *, params: _T.ListEndpointsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListEndpoints200, _Errors]: ...
|
|
1155
|
+
@_t.overload
|
|
1156
|
+
def list_endpoints(self, author: str, slug: str, *, params: _T.ListEndpointsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListEndpoints200, _HttpClientResponse], _Errors]: ...
|
|
1157
|
+
def list_endpoints(self, author: str, slug: str, *, params: _T.ListEndpointsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1158
|
+
"""List all endpoints for a model"""
|
|
1159
|
+
return self._json(_LIST_ENDPOINTS, f"/models/{author}/{slug}/endpoints", params, None, include_response)
|
|
1160
|
+
|
|
1161
|
+
@_t.overload
|
|
1162
|
+
def list_models_count(self, *, params: _T.ListModelsCountParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListModelsCount200, _Errors]: ...
|
|
1163
|
+
@_t.overload
|
|
1164
|
+
def list_models_count(self, *, params: _T.ListModelsCountParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListModelsCount200, _HttpClientResponse], _Errors]: ...
|
|
1165
|
+
def list_models_count(self, *, params: _T.ListModelsCountParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1166
|
+
"""Get total count of available models"""
|
|
1167
|
+
return self._json(_LIST_MODELS_COUNT, "/models/count", params, None, include_response)
|
|
1168
|
+
|
|
1169
|
+
@_t.overload
|
|
1170
|
+
def list_models_user(self, *, params: _T.ListModelsUserParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListModelsUser200, _Errors]: ...
|
|
1171
|
+
@_t.overload
|
|
1172
|
+
def list_models_user(self, *, params: _T.ListModelsUserParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListModelsUser200, _HttpClientResponse], _Errors]: ...
|
|
1173
|
+
def list_models_user(self, *, params: _T.ListModelsUserParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1174
|
+
"""List models filtered by user provider preferences, [privacy settings](https://openrouter.ai/docs/guides/privacy/provider-logging), and [guardrails](https://openrouter.ai/docs/guides/features/guardrails). If requesting through `eu.openrouter.ai/api/v1/...` the results will be filtered to models that satisfy [EU in-region routing](https://openrouter.ai/docs/guides/privacy/provider-logging#enterprise-eu-in-region-routing)."""
|
|
1175
|
+
return self._json(_LIST_MODELS_USER, "/models/user", params, None, include_response)
|
|
1176
|
+
|
|
1177
|
+
@_t.overload
|
|
1178
|
+
def list_observability_destinations(self, *, params: _T.ListObservabilityDestinationsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListObservabilityDestinations200, _Errors]: ...
|
|
1179
|
+
@_t.overload
|
|
1180
|
+
def list_observability_destinations(self, *, params: _T.ListObservabilityDestinationsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListObservabilityDestinations200, _HttpClientResponse], _Errors]: ...
|
|
1181
|
+
def list_observability_destinations(self, *, params: _T.ListObservabilityDestinationsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1182
|
+
"""List the observability destinations configured for the authenticated entity's default workspace. Use the `workspace_id` query parameter to scope the result to a different workspace. Only destinations with stable release status are surfaced — destinations of other types are excluded. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1183
|
+
return self._json(_LIST_OBSERVABILITY_DESTINATIONS, "/observability/destinations", params, None, include_response)
|
|
1184
|
+
|
|
1185
|
+
@_t.overload
|
|
1186
|
+
def create_observability_destination(self, *, payload: _T.CreateObservabilityDestinationRequestJson, params: _T.CreateObservabilityDestinationParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateObservabilityDestination201, _Errors]: ...
|
|
1187
|
+
@_t.overload
|
|
1188
|
+
def create_observability_destination(self, *, payload: _T.CreateObservabilityDestinationRequestJson, params: _T.CreateObservabilityDestinationParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateObservabilityDestination201, _HttpClientResponse], _Errors]: ...
|
|
1189
|
+
def create_observability_destination(self, *, payload: _T.CreateObservabilityDestinationRequestJson, params: _T.CreateObservabilityDestinationParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1190
|
+
"""Create a new observability destination. A maximum of 5 destinations per type is allowed. Defaults to the authenticated entity's default workspace; use the `workspace_id` body field to scope to a different workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1191
|
+
return self._json(_CREATE_OBSERVABILITY_DESTINATION, "/observability/destinations", params, _c.json_body(payload), include_response)
|
|
1192
|
+
|
|
1193
|
+
@_t.overload
|
|
1194
|
+
def get_observability_destination(self, id: str, *, params: _T.GetObservabilityDestinationParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetObservabilityDestination200, _Errors]: ...
|
|
1195
|
+
@_t.overload
|
|
1196
|
+
def get_observability_destination(self, id: str, *, params: _T.GetObservabilityDestinationParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetObservabilityDestination200, _HttpClientResponse], _Errors]: ...
|
|
1197
|
+
def get_observability_destination(self, id: str, *, params: _T.GetObservabilityDestinationParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1198
|
+
"""Fetch a single observability destination by its UUID. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1199
|
+
return self._json(_GET_OBSERVABILITY_DESTINATION, f"/observability/destinations/{id}", params, None, include_response)
|
|
1200
|
+
|
|
1201
|
+
@_t.overload
|
|
1202
|
+
def delete_observability_destination(self, id: str, *, params: _T.DeleteObservabilityDestinationParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteObservabilityDestination200, _Errors]: ...
|
|
1203
|
+
@_t.overload
|
|
1204
|
+
def delete_observability_destination(self, id: str, *, params: _T.DeleteObservabilityDestinationParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteObservabilityDestination200, _HttpClientResponse], _Errors]: ...
|
|
1205
|
+
def delete_observability_destination(self, id: str, *, params: _T.DeleteObservabilityDestinationParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1206
|
+
"""Delete an existing observability destination. This performs a soft delete. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1207
|
+
return self._json(_DELETE_OBSERVABILITY_DESTINATION, f"/observability/destinations/{id}", params, None, include_response)
|
|
1208
|
+
|
|
1209
|
+
@_t.overload
|
|
1210
|
+
def update_observability_destination(self, id: str, *, payload: _T.UpdateObservabilityDestinationRequestJson, params: _T.UpdateObservabilityDestinationParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UpdateObservabilityDestination200, _Errors]: ...
|
|
1211
|
+
@_t.overload
|
|
1212
|
+
def update_observability_destination(self, id: str, *, payload: _T.UpdateObservabilityDestinationRequestJson, params: _T.UpdateObservabilityDestinationParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UpdateObservabilityDestination200, _HttpClientResponse], _Errors]: ...
|
|
1213
|
+
def update_observability_destination(self, id: str, *, payload: _T.UpdateObservabilityDestinationRequestJson, params: _T.UpdateObservabilityDestinationParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1214
|
+
"""Update an existing observability destination. Only the fields provided in the request body are updated. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1215
|
+
return self._json(_UPDATE_OBSERVABILITY_DESTINATION, f"/observability/destinations/{id}", params, _c.json_body(payload), include_response)
|
|
1216
|
+
|
|
1217
|
+
@_t.overload
|
|
1218
|
+
def list_organization_members(self, *, params: _T.ListOrganizationMembersParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListOrganizationMembers200, _Errors]: ...
|
|
1219
|
+
@_t.overload
|
|
1220
|
+
def list_organization_members(self, *, params: _T.ListOrganizationMembersParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListOrganizationMembers200, _HttpClientResponse], _Errors]: ...
|
|
1221
|
+
def list_organization_members(self, *, params: _T.ListOrganizationMembersParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1222
|
+
"""List all members of the organization associated with the authenticated management key. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1223
|
+
return self._json(_LIST_ORGANIZATION_MEMBERS, "/organization/members", params, None, include_response)
|
|
1224
|
+
|
|
1225
|
+
@_t.overload
|
|
1226
|
+
def list_presets(self, *, params: _T.ListPresetsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListPresets200, _Errors]: ...
|
|
1227
|
+
@_t.overload
|
|
1228
|
+
def list_presets(self, *, params: _T.ListPresetsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListPresets200, _HttpClientResponse], _Errors]: ...
|
|
1229
|
+
def list_presets(self, *, params: _T.ListPresetsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1230
|
+
"""Lists all presets for the authenticated user, ordered by most recently updated first."""
|
|
1231
|
+
return self._json(_LIST_PRESETS, "/presets", params, None, include_response)
|
|
1232
|
+
|
|
1233
|
+
@_t.overload
|
|
1234
|
+
def get_preset(self, slug: str, *, params: _T.GetPresetParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetPreset200, _Errors]: ...
|
|
1235
|
+
@_t.overload
|
|
1236
|
+
def get_preset(self, slug: str, *, params: _T.GetPresetParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetPreset200, _HttpClientResponse], _Errors]: ...
|
|
1237
|
+
def get_preset(self, slug: str, *, params: _T.GetPresetParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1238
|
+
"""Retrieves a preset by its slug with its currently designated version inline."""
|
|
1239
|
+
return self._json(_GET_PRESET, f"/presets/{slug}", params, None, include_response)
|
|
1240
|
+
|
|
1241
|
+
@_t.overload
|
|
1242
|
+
def create_presets_chat_completions(self, slug: str, *, payload: _T.CreatePresetsChatCompletionsRequestJson, params: _T.CreatePresetsChatCompletionsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreatePresetsChatCompletions200, _Errors]: ...
|
|
1243
|
+
@_t.overload
|
|
1244
|
+
def create_presets_chat_completions(self, slug: str, *, payload: _T.CreatePresetsChatCompletionsRequestJson, params: _T.CreatePresetsChatCompletionsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreatePresetsChatCompletions200, _HttpClientResponse], _Errors]: ...
|
|
1245
|
+
def create_presets_chat_completions(self, slug: str, *, payload: _T.CreatePresetsChatCompletionsRequestJson, params: _T.CreatePresetsChatCompletionsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1246
|
+
"""Creates a preset (or a new version of an existing one) from an inference request body. Only fields that overlap with the preset config are persisted; other fields (e.g. `messages`, `stream`, `prompt`) are silently ignored."""
|
|
1247
|
+
return self._json(_CREATE_PRESETS_CHAT_COMPLETIONS, f"/presets/{slug}/chat/completions", params, _c.json_body(payload), include_response)
|
|
1248
|
+
|
|
1249
|
+
@_t.overload
|
|
1250
|
+
def create_presets_messages(self, slug: str, *, payload: _T.CreatePresetsMessagesRequestJson, params: _T.CreatePresetsMessagesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreatePresetsMessages200, _Errors]: ...
|
|
1251
|
+
@_t.overload
|
|
1252
|
+
def create_presets_messages(self, slug: str, *, payload: _T.CreatePresetsMessagesRequestJson, params: _T.CreatePresetsMessagesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreatePresetsMessages200, _HttpClientResponse], _Errors]: ...
|
|
1253
|
+
def create_presets_messages(self, slug: str, *, payload: _T.CreatePresetsMessagesRequestJson, params: _T.CreatePresetsMessagesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1254
|
+
"""Creates a preset (or a new version of an existing one) from an inference request body. Only fields that overlap with the preset config are persisted; other fields (e.g. `messages`, `stream`, `prompt`) are silently ignored."""
|
|
1255
|
+
return self._json(_CREATE_PRESETS_MESSAGES, f"/presets/{slug}/messages", params, _c.json_body(payload), include_response)
|
|
1256
|
+
|
|
1257
|
+
@_t.overload
|
|
1258
|
+
def create_presets_responses(self, slug: str, *, payload: _T.CreatePresetsResponsesRequestJson, params: _T.CreatePresetsResponsesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreatePresetsResponses200, _Errors]: ...
|
|
1259
|
+
@_t.overload
|
|
1260
|
+
def create_presets_responses(self, slug: str, *, payload: _T.CreatePresetsResponsesRequestJson, params: _T.CreatePresetsResponsesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreatePresetsResponses200, _HttpClientResponse], _Errors]: ...
|
|
1261
|
+
def create_presets_responses(self, slug: str, *, payload: _T.CreatePresetsResponsesRequestJson, params: _T.CreatePresetsResponsesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1262
|
+
"""Creates a preset (or a new version of an existing one) from an inference request body. Only fields that overlap with the preset config are persisted; other fields (e.g. `messages`, `stream`, `prompt`) are silently ignored."""
|
|
1263
|
+
return self._json(_CREATE_PRESETS_RESPONSES, f"/presets/{slug}/responses", params, _c.json_body(payload), include_response)
|
|
1264
|
+
|
|
1265
|
+
@_t.overload
|
|
1266
|
+
def list_preset_versions(self, slug: str, *, params: _T.ListPresetVersionsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListPresetVersions200, _Errors]: ...
|
|
1267
|
+
@_t.overload
|
|
1268
|
+
def list_preset_versions(self, slug: str, *, params: _T.ListPresetVersionsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListPresetVersions200, _HttpClientResponse], _Errors]: ...
|
|
1269
|
+
def list_preset_versions(self, slug: str, *, params: _T.ListPresetVersionsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1270
|
+
"""Lists all versions of a preset, ordered by version number ascending (oldest first)."""
|
|
1271
|
+
return self._json(_LIST_PRESET_VERSIONS, f"/presets/{slug}/versions", params, None, include_response)
|
|
1272
|
+
|
|
1273
|
+
@_t.overload
|
|
1274
|
+
def get_preset_version(self, slug: str, version: str, *, params: _T.GetPresetVersionParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetPresetVersion200, _Errors]: ...
|
|
1275
|
+
@_t.overload
|
|
1276
|
+
def get_preset_version(self, slug: str, version: str, *, params: _T.GetPresetVersionParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetPresetVersion200, _HttpClientResponse], _Errors]: ...
|
|
1277
|
+
def get_preset_version(self, slug: str, version: str, *, params: _T.GetPresetVersionParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1278
|
+
"""Retrieves a specific version of a preset by its slug and version number."""
|
|
1279
|
+
return self._json(_GET_PRESET_VERSION, f"/presets/{slug}/versions/{version}", params, None, include_response)
|
|
1280
|
+
|
|
1281
|
+
@_t.overload
|
|
1282
|
+
def list_providers(self, *, params: _T.ListProvidersParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListProviders200, _Errors]: ...
|
|
1283
|
+
@_t.overload
|
|
1284
|
+
def list_providers(self, *, params: _T.ListProvidersParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListProviders200, _HttpClientResponse], _Errors]: ...
|
|
1285
|
+
def list_providers(self, *, params: _T.ListProvidersParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1286
|
+
"""List all providers"""
|
|
1287
|
+
return self._json(_LIST_PROVIDERS, "/providers", params, None, include_response)
|
|
1288
|
+
|
|
1289
|
+
@_t.overload
|
|
1290
|
+
def create_rerank(self, *, payload: _T.CreateRerankRequestJson, params: _T.CreateRerankParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateRerank200, _Errors]: ...
|
|
1291
|
+
@_t.overload
|
|
1292
|
+
def create_rerank(self, *, payload: _T.CreateRerankRequestJson, params: _T.CreateRerankParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateRerank200, _HttpClientResponse], _Errors]: ...
|
|
1293
|
+
def create_rerank(self, *, payload: _T.CreateRerankRequestJson, params: _T.CreateRerankParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1294
|
+
"""Submits a rerank request to the rerank router"""
|
|
1295
|
+
return self._json(_CREATE_RERANK, "/rerank", params, _c.json_body(payload), include_response)
|
|
1296
|
+
|
|
1297
|
+
def create_rerank_sse(self, *, payload: _T.CreateRerankRequestJson, params: _T.CreateRerankParams | None = None) -> _Stream[_sse.DataEvent[_T.CreateRerank200Sse], _SseErrors]:
|
|
1298
|
+
"""Submits a rerank request to the rerank router"""
|
|
1299
|
+
return self._sse(_CREATE_RERANK_SSE, "/rerank", params, _c.json_body(payload), CreateRerank200Sse)
|
|
1300
|
+
|
|
1301
|
+
@_t.overload
|
|
1302
|
+
def create_responses(self, *, payload: _T.CreateResponsesRequestJson, params: _T.CreateResponsesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateResponses200, _Errors]: ...
|
|
1303
|
+
@_t.overload
|
|
1304
|
+
def create_responses(self, *, payload: _T.CreateResponsesRequestJson, params: _T.CreateResponsesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateResponses200, _HttpClientResponse], _Errors]: ...
|
|
1305
|
+
def create_responses(self, *, payload: _T.CreateResponsesRequestJson, params: _T.CreateResponsesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1306
|
+
"""Creates a streaming or non-streaming response using OpenResponses API format"""
|
|
1307
|
+
return self._json(_CREATE_RESPONSES, "/responses", params, _c.json_body(payload), include_response)
|
|
1308
|
+
|
|
1309
|
+
def create_responses_sse(self, *, payload: _T.CreateResponsesRequestJson, params: _T.CreateResponsesParams | None = None) -> _Stream[_sse.DataEvent[_T.CreateResponses200Sse], _SseErrors]:
|
|
1310
|
+
"""Creates a streaming or non-streaming response using OpenResponses API format"""
|
|
1311
|
+
return self._sse(_CREATE_RESPONSES_SSE, "/responses", params, _c.json_body(payload), CreateResponses200Sse)
|
|
1312
|
+
|
|
1313
|
+
@_t.overload
|
|
1314
|
+
def create_videos(self, *, payload: _T.CreateVideosRequestJson, params: _T.CreateVideosParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateVideos202, _Errors]: ...
|
|
1315
|
+
@_t.overload
|
|
1316
|
+
def create_videos(self, *, payload: _T.CreateVideosRequestJson, params: _T.CreateVideosParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateVideos202, _HttpClientResponse], _Errors]: ...
|
|
1317
|
+
def create_videos(self, *, payload: _T.CreateVideosRequestJson, params: _T.CreateVideosParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1318
|
+
"""Submits a video generation request and returns a polling URL to check status"""
|
|
1319
|
+
return self._json(_CREATE_VIDEOS, "/videos", params, _c.json_body(payload), include_response)
|
|
1320
|
+
|
|
1321
|
+
@_t.overload
|
|
1322
|
+
def get_videos(self, job_id: str, *, params: _T.GetVideosParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetVideos200, _Errors]: ...
|
|
1323
|
+
@_t.overload
|
|
1324
|
+
def get_videos(self, job_id: str, *, params: _T.GetVideosParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetVideos200, _HttpClientResponse], _Errors]: ...
|
|
1325
|
+
def get_videos(self, job_id: str, *, params: _T.GetVideosParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1326
|
+
"""Returns job status and content URLs when completed"""
|
|
1327
|
+
return self._json(_GET_VIDEOS, f"/videos/{job_id}", params, None, include_response)
|
|
1328
|
+
|
|
1329
|
+
@_t.overload
|
|
1330
|
+
def list_videos_content(self, job_id: str, *, params: _T.ListVideosContentParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[None, _Errors]: ...
|
|
1331
|
+
@_t.overload
|
|
1332
|
+
def list_videos_content(self, job_id: str, *, params: _T.ListVideosContentParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[None, _HttpClientResponse], _Errors]: ...
|
|
1333
|
+
def list_videos_content(self, job_id: str, *, params: _T.ListVideosContentParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1334
|
+
"""Streams the generated video content from the upstream provider"""
|
|
1335
|
+
return self._json(_LIST_VIDEOS_CONTENT, f"/videos/{job_id}/content", params, None, include_response)
|
|
1336
|
+
|
|
1337
|
+
@_t.overload
|
|
1338
|
+
def list_videos_models(self, *, params: _T.ListVideosModelsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListVideosModels200, _Errors]: ...
|
|
1339
|
+
@_t.overload
|
|
1340
|
+
def list_videos_models(self, *, params: _T.ListVideosModelsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListVideosModels200, _HttpClientResponse], _Errors]: ...
|
|
1341
|
+
def list_videos_models(self, *, params: _T.ListVideosModelsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1342
|
+
"""Returns a list of all available video generation models and their properties"""
|
|
1343
|
+
return self._json(_LIST_VIDEOS_MODELS, "/videos/models", params, None, include_response)
|
|
1344
|
+
|
|
1345
|
+
@_t.overload
|
|
1346
|
+
def list_workspaces(self, *, params: _T.ListWorkspacesParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListWorkspaces200, _Errors]: ...
|
|
1347
|
+
@_t.overload
|
|
1348
|
+
def list_workspaces(self, *, params: _T.ListWorkspacesParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListWorkspaces200, _HttpClientResponse], _Errors]: ...
|
|
1349
|
+
def list_workspaces(self, *, params: _T.ListWorkspacesParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1350
|
+
"""List all workspaces for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1351
|
+
return self._json(_LIST_WORKSPACES, "/workspaces", params, None, include_response)
|
|
1352
|
+
|
|
1353
|
+
@_t.overload
|
|
1354
|
+
def create_workspace(self, *, payload: _T.CreateWorkspaceRequestJson, params: _T.CreateWorkspaceParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.CreateWorkspace201, _Errors]: ...
|
|
1355
|
+
@_t.overload
|
|
1356
|
+
def create_workspace(self, *, payload: _T.CreateWorkspaceRequestJson, params: _T.CreateWorkspaceParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.CreateWorkspace201, _HttpClientResponse], _Errors]: ...
|
|
1357
|
+
def create_workspace(self, *, payload: _T.CreateWorkspaceRequestJson, params: _T.CreateWorkspaceParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1358
|
+
"""Create a new workspace for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1359
|
+
return self._json(_CREATE_WORKSPACE, "/workspaces", params, _c.json_body(payload), include_response)
|
|
1360
|
+
|
|
1361
|
+
@_t.overload
|
|
1362
|
+
def get_workspace(self, id: str, *, params: _T.GetWorkspaceParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.GetWorkspace200, _Errors]: ...
|
|
1363
|
+
@_t.overload
|
|
1364
|
+
def get_workspace(self, id: str, *, params: _T.GetWorkspaceParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.GetWorkspace200, _HttpClientResponse], _Errors]: ...
|
|
1365
|
+
def get_workspace(self, id: str, *, params: _T.GetWorkspaceParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1366
|
+
"""Get a single workspace by ID or slug. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1367
|
+
return self._json(_GET_WORKSPACE, f"/workspaces/{id}", params, None, include_response)
|
|
1368
|
+
|
|
1369
|
+
@_t.overload
|
|
1370
|
+
def delete_workspace(self, id: str, *, params: _T.DeleteWorkspaceParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteWorkspace200, _Errors]: ...
|
|
1371
|
+
@_t.overload
|
|
1372
|
+
def delete_workspace(self, id: str, *, params: _T.DeleteWorkspaceParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteWorkspace200, _HttpClientResponse], _Errors]: ...
|
|
1373
|
+
def delete_workspace(self, id: str, *, params: _T.DeleteWorkspaceParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1374
|
+
"""Delete an existing workspace. The default workspace cannot be deleted. Workspaces with active API keys cannot be deleted; remove the keys first. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1375
|
+
return self._json(_DELETE_WORKSPACE, f"/workspaces/{id}", params, None, include_response)
|
|
1376
|
+
|
|
1377
|
+
@_t.overload
|
|
1378
|
+
def update_workspace(self, id: str, *, payload: _T.UpdateWorkspaceRequestJson, params: _T.UpdateWorkspaceParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UpdateWorkspace200, _Errors]: ...
|
|
1379
|
+
@_t.overload
|
|
1380
|
+
def update_workspace(self, id: str, *, payload: _T.UpdateWorkspaceRequestJson, params: _T.UpdateWorkspaceParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UpdateWorkspace200, _HttpClientResponse], _Errors]: ...
|
|
1381
|
+
def update_workspace(self, id: str, *, payload: _T.UpdateWorkspaceRequestJson, params: _T.UpdateWorkspaceParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1382
|
+
"""Update an existing workspace by ID or slug. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1383
|
+
return self._json(_UPDATE_WORKSPACE, f"/workspaces/{id}", params, _c.json_body(payload), include_response)
|
|
1384
|
+
|
|
1385
|
+
@_t.overload
|
|
1386
|
+
def list_workspace_budgets(self, id: str, *, params: _T.ListWorkspaceBudgetsParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListWorkspaceBudgets200, _Errors]: ...
|
|
1387
|
+
@_t.overload
|
|
1388
|
+
def list_workspace_budgets(self, id: str, *, params: _T.ListWorkspaceBudgetsParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListWorkspaceBudgets200, _HttpClientResponse], _Errors]: ...
|
|
1389
|
+
def list_workspace_budgets(self, id: str, *, params: _T.ListWorkspaceBudgetsParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1390
|
+
"""List all budgets configured for a workspace. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1391
|
+
return self._json(_LIST_WORKSPACE_BUDGETS, f"/workspaces/{id}/budgets", params, None, include_response)
|
|
1392
|
+
|
|
1393
|
+
@_t.overload
|
|
1394
|
+
def upsert_workspace_budget(self, id: str, interval: str, *, payload: _T.UpsertWorkspaceBudgetRequestJson, params: _T.UpsertWorkspaceBudgetParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.UpsertWorkspaceBudget200, _Errors]: ...
|
|
1395
|
+
@_t.overload
|
|
1396
|
+
def upsert_workspace_budget(self, id: str, interval: str, *, payload: _T.UpsertWorkspaceBudgetRequestJson, params: _T.UpsertWorkspaceBudgetParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.UpsertWorkspaceBudget200, _HttpClientResponse], _Errors]: ...
|
|
1397
|
+
def upsert_workspace_budget(self, id: str, interval: str, *, payload: _T.UpsertWorkspaceBudgetRequestJson, params: _T.UpsertWorkspaceBudgetParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1398
|
+
"""Create or update the budget for a given interval. Budget limits must strictly decrease as the interval narrows (lifetime > monthly > weekly > daily). [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1399
|
+
return self._json(_UPSERT_WORKSPACE_BUDGET, f"/workspaces/{id}/budgets/{interval}", params, _c.json_body(payload), include_response)
|
|
1400
|
+
|
|
1401
|
+
@_t.overload
|
|
1402
|
+
def delete_workspace_budget(self, id: str, interval: str, *, params: _T.DeleteWorkspaceBudgetParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.DeleteWorkspaceBudget200, _Errors]: ...
|
|
1403
|
+
@_t.overload
|
|
1404
|
+
def delete_workspace_budget(self, id: str, interval: str, *, params: _T.DeleteWorkspaceBudgetParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.DeleteWorkspaceBudget200, _HttpClientResponse], _Errors]: ...
|
|
1405
|
+
def delete_workspace_budget(self, id: str, interval: str, *, params: _T.DeleteWorkspaceBudgetParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1406
|
+
"""Remove the budget for a given interval. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1407
|
+
return self._json(_DELETE_WORKSPACE_BUDGET, f"/workspaces/{id}/budgets/{interval}", params, None, include_response)
|
|
1408
|
+
|
|
1409
|
+
@_t.overload
|
|
1410
|
+
def list_workspace_members(self, id: str, *, params: _T.ListWorkspaceMembersParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.ListWorkspaceMembers200, _Errors]: ...
|
|
1411
|
+
@_t.overload
|
|
1412
|
+
def list_workspace_members(self, id: str, *, params: _T.ListWorkspaceMembersParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.ListWorkspaceMembers200, _HttpClientResponse], _Errors]: ...
|
|
1413
|
+
def list_workspace_members(self, id: str, *, params: _T.ListWorkspaceMembersParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1414
|
+
"""List all members of a workspace. Returns paginated results. For the default workspace, returns all organization members (implicit membership). [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1415
|
+
return self._json(_LIST_WORKSPACE_MEMBERS, f"/workspaces/{id}/members", params, None, include_response)
|
|
1416
|
+
|
|
1417
|
+
@_t.overload
|
|
1418
|
+
def bulk_add_workspace_members(self, id: str, *, payload: _T.BulkAddWorkspaceMembersRequestJson, params: _T.BulkAddWorkspaceMembersParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.BulkAddWorkspaceMembers200, _Errors]: ...
|
|
1419
|
+
@_t.overload
|
|
1420
|
+
def bulk_add_workspace_members(self, id: str, *, payload: _T.BulkAddWorkspaceMembersRequestJson, params: _T.BulkAddWorkspaceMembersParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.BulkAddWorkspaceMembers200, _HttpClientResponse], _Errors]: ...
|
|
1421
|
+
def bulk_add_workspace_members(self, id: str, *, payload: _T.BulkAddWorkspaceMembersRequestJson, params: _T.BulkAddWorkspaceMembersParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1422
|
+
"""Add multiple organization members to a workspace. Members are assigned the same role they hold in the organization. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1423
|
+
return self._json(_BULK_ADD_WORKSPACE_MEMBERS, f"/workspaces/{id}/members/add", params, _c.json_body(payload), include_response)
|
|
1424
|
+
|
|
1425
|
+
@_t.overload
|
|
1426
|
+
def bulk_remove_workspace_members(self, id: str, *, payload: _T.BulkRemoveWorkspaceMembersRequestJson, params: _T.BulkRemoveWorkspaceMembersParams | None = None, include_response: _t.Literal[False] = False) -> _Effect[_T.BulkRemoveWorkspaceMembers200, _Errors]: ...
|
|
1427
|
+
@_t.overload
|
|
1428
|
+
def bulk_remove_workspace_members(self, id: str, *, payload: _T.BulkRemoveWorkspaceMembersRequestJson, params: _T.BulkRemoveWorkspaceMembersParams | None = None, include_response: _t.Literal[True]) -> _Effect[tuple[_T.BulkRemoveWorkspaceMembers200, _HttpClientResponse], _Errors]: ...
|
|
1429
|
+
def bulk_remove_workspace_members(self, id: str, *, payload: _T.BulkRemoveWorkspaceMembersRequestJson, params: _T.BulkRemoveWorkspaceMembersParams | None = None, include_response: bool = False) -> _Effect[_t.Any, _Errors]:
|
|
1430
|
+
"""Remove multiple members from a workspace. Members with active API keys in the workspace cannot be removed. SCIM-managed members cannot be removed; changes must be made in your identity provider. [Management key](/docs/guides/overview/auth/management-api-keys) required."""
|
|
1431
|
+
return self._json(_BULK_REMOVE_WORKSPACE_MEMBERS, f"/workspaces/{id}/members/remove", params, _c.json_body(payload), include_response)
|
|
1432
|
+
|
|
1433
|
+
|
|
1434
|
+
def make(
|
|
1435
|
+
http_client: _HttpClientService[_HttpClientError],
|
|
1436
|
+
*,
|
|
1437
|
+
transform_client: _c.ClientTransform | None = None,
|
|
1438
|
+
) -> OpenRouterClient:
|
|
1439
|
+
"""The client over ``http_client`` (requests carry relative paths:
|
|
1440
|
+
prepend the API's URL to the client). ``transform_client`` picks the
|
|
1441
|
+
client each JSON operation runs on, per call."""
|
|
1442
|
+
return OpenRouterClient(http_client, transform_client)
|
|
1443
|
+
|
|
1444
|
+
|
|
1445
|
+
__all__ = ["OpenRouterClient", "OpenRouterClientError", "make"]
|