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
3 changes: 3 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# OpenRouter API Key for running E2E tests
# Get your API key from https://openrouter.ai/keys
OPENROUTER_API_KEY=your_api_key_here
9 changes: 8 additions & 1 deletion .github/actions/validate-sdk/action.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
name: 'Validate SDK'
description: 'Run build, typecheck, and tests for the SDK'

inputs:
openrouter-api-key:
description: 'OpenRouter API key for running tests'
required: true

runs:
using: 'composite'
steps:
Expand Down Expand Up @@ -44,4 +49,6 @@ runs:

- name: Run tests
shell: bash
run: npx vitest
env:
OPENROUTER_API_KEY: ${{ inputs.openrouter-api-key }}
run: npx vitest --run
1 change: 1 addition & 0 deletions .github/workflows/pr-validation.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ on:
jobs:
validate:
uses: ./.github/workflows/validation-checks.yaml
secrets: inherit
2 changes: 2 additions & 0 deletions .github/workflows/speakeasy_run_on_pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ jobs:

- name: Validate SDK
uses: ./.github/actions/validate-sdk
with:
openrouter-api-key: ${{ secrets.OPENROUTER_API_KEY }}

- name: Commit changes
run: |
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/validation-checks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,5 @@ jobs:

- name: Validate SDK
uses: ./.github/actions/validate-sdk
with:
openrouter-api-key: ${{ secrets.OPENROUTER_API_KEY }}
6 changes: 3 additions & 3 deletions .speakeasy/gen.lock
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
lockVersion: 2.0.0
id: 8b6cd71c-ea04-44da-af45-e43968b5928d
management:
docChecksum: a815b143d071828ce4ab7b3a743ec82c
docChecksum: 9d79e7680beab7c04249798b91065cc4
docVersion: 1.0.0
speakeasyVersion: 1.642.1
generationVersion: 2.731.4
releaseVersion: 0.0.1-beta.14
configChecksum: 6639946bd9c6d122465a7506943348f4
releaseVersion: 0.0.1-beta.16
configChecksum: 4a7712d499110c49acf1cf697001b209
repoURL: https://github.com/OpenRouterTeam/typescript-sdk.git
installationURL: https://github.com/OpenRouterTeam/typescript-sdk
published: true
Expand Down
2 changes: 1 addition & 1 deletion .speakeasy/gen.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ generation:
generateNewTests: true
skipResponseBodyAssertions: false
typescript:
version: 0.0.1-beta.14
version: 0.0.1-beta.16
acceptHeaderEnum: false
additionalDependencies:
dependencies: {}
Expand Down
14 changes: 8 additions & 6 deletions .speakeasy/in.openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4756,12 +4756,14 @@ components:
rejected_prediction_tokens:
type: number
prompt_tokens_details:
type: object
properties:
cached_tokens:
type: number
audio_tokens:
type: number
anyOf:
- type: object
properties:
cached_tokens:
type: number
audio_tokens:
type: number
- type: 'null'
required:
- completion_tokens
- prompt_tokens
Expand Down
14 changes: 8 additions & 6 deletions .speakeasy/out.openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4779,12 +4779,14 @@ components:
rejected_prediction_tokens:
type: number
prompt_tokens_details:
type: object
properties:
cached_tokens:
type: number
audio_tokens:
type: number
anyOf:
- type: object
properties:
cached_tokens:
type: number
audio_tokens:
type: number
- type: 'null'
required:
- completion_tokens
- prompt_tokens
Expand Down
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.642.1
sources:
OpenRouter API:
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:6dd11a2a3212f61a00c0e0b6309aaf39cc3d2575493aea2b54aafb0cf187d272
sourceBlobDigest: sha256:e46f40a6a57e7eb1c21a40c388f46b9b7b36ed0dd9ea78d480d300d83ace2fe3
sourceRevisionDigest: sha256:d5386ba830642c25b458e63884bd42475fcb8b37d442312cbc7468a541d3e5c0
sourceBlobDigest: sha256:c4cf70faabb2eed400c9b5e1a9185ae65baf8f5cb2575ad4457f6a4fe340a931
tags:
- latest
- 1.0.0
targets:
openrouter:
source: OpenRouter API
sourceNamespace: open-router-chat-completions-api
sourceRevisionDigest: sha256:6dd11a2a3212f61a00c0e0b6309aaf39cc3d2575493aea2b54aafb0cf187d272
sourceBlobDigest: sha256:e46f40a6a57e7eb1c21a40c388f46b9b7b36ed0dd9ea78d480d300d83ace2fe3
sourceRevisionDigest: sha256:d5386ba830642c25b458e63884bd42475fcb8b37d442312cbc7468a541d3e5c0
sourceBlobDigest: sha256:c4cf70faabb2eed400c9b5e1a9185ae65baf8f5cb2575ad4457f6a4fe340a931
codeSamplesNamespace: open-router-chat-completions-api-typescript-code-samples
codeSamplesRevisionDigest: sha256:1d36752fa1859baae015ab744eb16369c7c2a9d9de92e60135d98860d2ab4741
codeSamplesRevisionDigest: sha256:c880eaee9f97ea8027b797a2fc9b2b561f763470c9f68c1e0b865b78150ff5b3
workflow:
workflowVersion: 1.0.0
speakeasyVersion: latest
Expand Down
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ The [OpenRouter](https://openrouter.ai/) SDK gives access to over 300 large lang
* [Error Handling](#error-handling)
* [Debugging](#debugging)
* [Development](#development)
* [Running Tests](#running-tests)
* [Maturity](#maturity)
* [Contributions](#contributions)

Expand Down Expand Up @@ -1162,6 +1163,30 @@ You can also enable a default debug logger by setting an environment variable `O

# Development

## Running Tests

To run the test suite, you'll need to set up your environment with an OpenRouter API key.

### Local Development

1. Copy the example environment file:

```bash
cp .env.example .env
```

2. Edit `.env` and add your OpenRouter API key:

```bash
OPENROUTER_API_KEY=your_api_key_here
```

3. Run the tests:

```bash
npx vitest
```

## Maturity

This SDK is in beta, and there may be breaking changes between versions without a major version update. Therefore, we recommend pinning usage
Expand Down
4 changes: 2 additions & 2 deletions docs/models/chatgenerationtokenusage.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ let value: ChatGenerationTokenUsage = {
rejectedPredictionTokens: 2801.33,
},
promptTokensDetails: {
cachedTokens: 6205.53,
audioTokens: 1522.95,
cachedTokens: 1522.95,
audioTokens: 8854.61,
},
};
```
Expand Down
4 changes: 2 additions & 2 deletions docs/models/chatresponse.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ let value: ChatResponse = {
rejectedPredictionTokens: 2801.33,
},
promptTokensDetails: {
cachedTokens: 6205.53,
audioTokens: 1522.95,
cachedTokens: 1522.95,
audioTokens: 8854.61,
},
},
};
Expand Down
4 changes: 2 additions & 2 deletions docs/models/chatstreamingresponsechunk.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,8 @@ let value: ChatStreamingResponseChunk = {
rejectedPredictionTokens: 2801.33,
},
promptTokensDetails: {
cachedTokens: 6205.53,
audioTokens: 1522.95,
cachedTokens: 1522.95,
audioTokens: 8854.61,
},
},
},
Expand Down
4 changes: 2 additions & 2 deletions docs/models/chatstreamingresponsechunkdata.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ let value: ChatStreamingResponseChunkData = {
rejectedPredictionTokens: 2801.33,
},
promptTokensDetails: {
cachedTokens: 6205.53,
audioTokens: 1522.95,
cachedTokens: 1522.95,
audioTokens: 8854.61,
},
},
};
Expand Down
4 changes: 2 additions & 2 deletions docs/models/operations/sendchatcompletionrequestresponse.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ const value: models.ChatResponse = {
rejectedPredictionTokens: 2801.33,
},
promptTokensDetails: {
cachedTokens: 6205.53,
audioTokens: 1522.95,
cachedTokens: 1522.95,
audioTokens: 8854.61,
},
},
};
Expand Down
Loading
Loading