Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
282 changes: 238 additions & 44 deletions .speakeasy/gen.lock

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ generation:
documentation: mintlify
preApplyUnionDiscriminators: true
python:
version: 1.3.0
version: 1.3.1
additionalDependencies:
dev: {}
main: {}
Expand Down
357 changes: 334 additions & 23 deletions .speakeasy/out.openapi.yaml

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions .speakeasy/workflow.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,19 @@ speakeasyVersion: 1.787.0
sources:
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:77833092b90f7e68c3d4892bd2f092d7bfee0703b8d027f05e8247f34b063ded
sourceBlobDigest: sha256:1bb6c8de10cfe9440ea0a95a3ae644ccad440c7851e9225e22087764493f1f05
sourceRevisionDigest: sha256:7a83f0762c40aac3bb8e78a9c590061c91b3be862db4d3d9cad87f45580c5fa2
sourceBlobDigest: sha256:9d55afd08572430be4aef479952e830a3c49344748fbd32cf8b8f62e45f34243
tags:
- latest
- 1.0.0
targets:
open-router:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:77833092b90f7e68c3d4892bd2f092d7bfee0703b8d027f05e8247f34b063ded
sourceBlobDigest: sha256:1bb6c8de10cfe9440ea0a95a3ae644ccad440c7851e9225e22087764493f1f05
sourceRevisionDigest: sha256:7a83f0762c40aac3bb8e78a9c590061c91b3be862db4d3d9cad87f45580c5fa2
sourceBlobDigest: sha256:9d55afd08572430be4aef479952e830a3c49344748fbd32cf8b8f62e45f34243
codeSamplesNamespace: open-router-python-code-samples
codeSamplesRevisionDigest: sha256:421137ec0ba899d41251c3a83c819b71b205a0fe355971bbe8b248add9e1152d
codeSamplesRevisionDigest: sha256:2ec8c3cee3d23279e25cb1e3c6f85569c68842fe4e80f2cd7ae43f09e3032041
workflow:
workflowVersion: 1.0.0
speakeasyVersion: 1.787.0
Expand Down
12 changes: 11 additions & 1 deletion RELEASES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2769,4 +2769,14 @@ Based on:
### Generated
- [python v1.3.0] .
### Releases
- [PyPI v1.3.0] https://pypi.org/project/openrouter/1.3.0 - .
- [PyPI v1.3.0] https://pypi.org/project/openrouter/1.3.0 - .

## 2026-09-29 02:09:24
### Changes
Based on:
- OpenAPI Doc
- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy
### Generated
- [python v1.3.1] .
### Releases
- [PyPI v1.3.1] https://pypi.org/project/openrouter/1.3.1 - .
17 changes: 0 additions & 17 deletions docs/components/scope.mdx

This file was deleted.

2 changes: 1 addition & 1 deletion docs/components/tokenexchangerequest.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ RFC 8693 token exchange request body (application/x-www-form-urlencoded).
| `federation_policy_id` | *str* | :heavy_check_mark: | The federation policy to evaluate, from Settings β†’ Workload identity. Binds the exchange to one organization. | 4b2f7d1e-8c3a-4e5f-9a6b-1c2d3e4f5a6b |
| `grant_type` | [components.GrantType](../components/granttype.mdx) | :heavy_check_mark: | Must be `urn:ietf:params:oauth:grant-type:token-exchange`. | urn:ietf:params:oauth:grant-type:token-exchange |
| `requested_token_type` | [Optional[components.RequestedTokenType]](../components/requestedtokentype.mdx) | :heavy_minus_sign: | Optional; when present must be `urn:ietf:params:oauth:token-type:access_token`. | urn:ietf:params:oauth:token-type:access_token |
| `scope` | [Optional[components.Scope]](../components/scope.mdx) | :heavy_minus_sign: | Optional; only `inference` is available. | inference |
| `scope` | [Optional[components.TokenExchangeRequestScope]](../components/tokenexchangerequestscope.mdx) | :heavy_minus_sign: | Optional; only `inference` is available. | inference |
| `subject_token` | *str* | :heavy_check_mark: | The JWT issued by your identity provider. | \<jwt from your identity provider> |
| `subject_token_type` | [components.SubjectTokenType](../components/subjecttokentype.mdx) | :heavy_check_mark: | Must be `urn:ietf:params:oauth:token-type:jwt`. | urn:ietf:params:oauth:token-type:jwt |
17 changes: 17 additions & 0 deletions docs/components/tokenexchangerequestscope.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: "TokenExchangeRequestScope"
---

Optional; only `inference` is available.

## Example Usage

```python
from openrouter.components import TokenExchangeRequestScope
value: TokenExchangeRequestScope = "inference"
```


## Values

- `"inference"`
16 changes: 16 additions & 0 deletions docs/components/vaulteffectivesecret.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
title: "VaultEffectiveSecret"
---

Metadata for the one secret the intern's outbound requests receive under this name. The secret value is never returned. The intern receives it only on requests to a hostname in `hosts`, or on any request when `hosts` is `null`; a request to any other hostname receives no secret under this name, even when another vault holds one. `fingerprint` is comparable only within one vault.


## Fields

| Field | Type | Required | Description |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `created_at` | [date](https://docs.python.org/3/library/datetime.html#date-objects) | :heavy_check_mark: | N/A |
| `fingerprint` | *Nullable[str]* | :heavy_check_mark: | N/A |
| `hosts` | List[*str*] | :heavy_check_mark: | N/A |
| `name` | *str* | :heavy_check_mark: | N/A |
| `scope` | [components.VaultEffectiveSecretScope](../components/vaulteffectivesecretscope.mdx) | :heavy_check_mark: | Where the delivered secret is stored: `intern` for the intern's own vault, `attached` for a vault attached to the intern, `workspace` for the workspace vault. |
13 changes: 13 additions & 0 deletions docs/components/vaulteffectivesecretlistresponse.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
title: "VaultEffectiveSecretListResponse"
---

One page of the secrets an intern receives, one entry per name.


## Fields

| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `data` | List[[components.VaultEffectiveSecret](../components/vaulteffectivesecret.mdx)] | :heavy_check_mark: | N/A |
| `has_more` | *bool* | :heavy_check_mark: | True when more secrets exist beyond this page. Request the next page with `offset` increased by the number of returned entries. |
23 changes: 23 additions & 0 deletions docs/components/vaulteffectivesecretscope.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: "VaultEffectiveSecretScope"
---

Where the delivered secret is stored: `intern` for the intern's own vault, `attached` for a vault attached to the intern, `workspace` for the workspace vault.

## Example Usage

```python
from openrouter.components import VaultEffectiveSecretScope

# Open enum: unrecognized values are captured as UnrecognizedStr
value: VaultEffectiveSecretScope = "intern"
```


## Values

This is an open enum. Unrecognized values will not fail type checks.

- `"intern"`
- `"attached"`
- `"workspace"`
11 changes: 11 additions & 0 deletions docs/operations/listinterneffectivevaultsecretsglobals.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
title: "ListInternEffectiveVaultSecretsGlobals"
---

## Fields

| Field | Type | Required | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| `http_referer` | *Optional[str]* | :heavy_minus_sign: | The app identifier should be your app's URL and is used as the primary identifier for rankings.<br/>This is used to track API usage per application.<br/> |
| `x_open_router_title` | *Optional[str]* | :heavy_minus_sign: | The app display name allows you to customize how your app appears in OpenRouter's dashboard.<br/> |
| `x_open_router_categories` | *Optional[str]* | :heavy_minus_sign: | Comma-separated list of app categories (e.g. "cli-agent,cloud-agent"). Used for marketplace rankings.<br/> |
Loading
Loading