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
1 change: 0 additions & 1 deletion .github/workflows/release-doctor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,3 @@ jobs:
bash ./bin/check-release-environment
env:
NPM_TOKEN: ${{ secrets.PARALLEL_NPM_TOKEN || secrets.NPM_TOKEN }}

2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.4.1"
".": "0.5.0"
}
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 24
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/parallel-web%2Fparallel-sdk-66ee13c3475d2c76f0956f258f0469903155b83ef02e839641be94cdc2014cf3.yml
openapi_spec_hash: 88af7b88725bead1f8ccdcaeb436fadb
config_hash: e17d82e9cb35004e5f9a9d3c4cf51aeb
configured_endpoints: 38
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/parallel-web/parallel-sdk-b134f034fe11499d713c03d07778aba8a395d7e3cbbc3d8a4bd2891f0aa970ba.yml
openapi_spec_hash: c4fc5b0cb3bc48076f736a0ad2b2e75e
config_hash: 27cd9354fb0ac3129cbf269737cece6c
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,31 @@
# Changelog

## 0.5.0 (2026-05-06)

Full Changelog: [v0.4.1...v0.5.0](https://github.com/parallel-web/parallel-sdk-typescript/compare/v0.4.1...v0.5.0)

### Features

* **api:** manual updates ([c6972a0](https://github.com/parallel-web/parallel-sdk-typescript/commit/c6972a001e841209bf4f36ab659bfdf1427f485e))
* **api:** manual updates ([e40609a](https://github.com/parallel-web/parallel-sdk-typescript/commit/e40609a9be369adf7bc7db56b21d1016aa9c8b73))
* **api:** manual updates ([98f915c](https://github.com/parallel-web/parallel-sdk-typescript/commit/98f915c996abb163d8a79698fa57259bae3b0584))
* **api:** Task Groups v1 added to SDK ([b939d5e](https://github.com/parallel-web/parallel-sdk-typescript/commit/b939d5e663c39640ce2f0033fc3590d886f2b571))
* support setting headers via env ([305fe46](https://github.com/parallel-web/parallel-sdk-typescript/commit/305fe467afbe744697c18b8d9a505d7e0952fabb))


### Bug Fixes

* **types:** drop FindallCancelResponse alias whose target was removed ([816c149](https://github.com/parallel-web/parallel-sdk-typescript/commit/816c149819a5d48307f943460ae1c29538a191f8))
* **types:** preserve back-compat namespace members for renamed inline types ([e5cafc2](https://github.com/parallel-web/parallel-sdk-typescript/commit/e5cafc25e63ccbba105f95356c093343f5185f87))
* **types:** use export namespace for FindAllRunInput/Schema augmentation ([bc434bf](https://github.com/parallel-web/parallel-sdk-typescript/commit/bc434bfd3130e70585864a1d7b826cf34c88c0f5))


### Chores

* **format:** run eslint and prettier separately ([4ac089c](https://github.com/parallel-web/parallel-sdk-typescript/commit/4ac089c6b95d0b96927c841cf9587a0d395b8a91))
* **internal:** codegen related update ([c92502e](https://github.com/parallel-web/parallel-sdk-typescript/commit/c92502e8ce716259136efe8dbb3edcb3e7c2899b))
* **internal:** more robust bootstrap script ([3eaee7d](https://github.com/parallel-web/parallel-sdk-typescript/commit/3eaee7de908bd37cb089f25747dc25f66829baa3))

## 0.4.1 (2026-04-22)

Full Changelog: [v0.4.0...v0.4.1](https://github.com/parallel-web/parallel-sdk-typescript/compare/v0.4.0...v0.4.1)
Expand Down
58 changes: 58 additions & 0 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ Types:
- <code><a href="./src/resources/top-level.ts">ExtractResponse</a></code>
- <code><a href="./src/resources/top-level.ts">ExtractResult</a></code>
- <code><a href="./src/resources/top-level.ts">FetchPolicy</a></code>
- <code><a href="./src/resources/top-level.ts">FullContentSettings</a></code>
- <code><a href="./src/resources/top-level.ts">SearchResult</a></code>
- <code><a href="./src/resources/top-level.ts">UsageItem</a></code>
- <code><a href="./src/resources/top-level.ts">WebSearchResult</a></code>
Expand Down Expand Up @@ -39,10 +40,14 @@ Types:
- <code><a href="./src/resources/task-run.ts">McpServer</a></code>
- <code><a href="./src/resources/task-run.ts">McpToolCall</a></code>
- <code><a href="./src/resources/task-run.ts">RunInput</a></code>
- <code><a href="./src/resources/task-run.ts">TaskAdvancedSettings</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRun</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunEvent</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunJsonOutput</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunProgressMessageEvent</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunProgressStatsEvent</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunResult</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunSourceStats</a></code>
- <code><a href="./src/resources/task-run.ts">TaskRunTextOutput</a></code>
- <code><a href="./src/resources/task-run.ts">TaskSpec</a></code>
- <code><a href="./src/resources/task-run.ts">TextSchema</a></code>
Expand All @@ -55,5 +60,58 @@ Methods:
- <code title="get /v1/tasks/runs/{run_id}">client.taskRun.<a href="./src/resources/task-run.ts">retrieve</a>(runID) -> TaskRun</code>
- <code title="get /v1/tasks/runs/{run_id}/events">client.taskRun.<a href="./src/resources/task-run.ts">events</a>(runID) -> TaskRunEventsResponse</code>
- <code title="get /v1/tasks/runs/{run_id}/result">client.taskRun.<a href="./src/resources/task-run.ts">result</a>(runID, { ...params }) -> TaskRunResult</code>
- <code title="get /v1/tasks/runs/{run_id}/input">client.taskRun.<a href="./src/resources/task-run.ts">retrieveInput</a>(runID) -> RunInput</code>

# TaskGroup

Types:

- <code><a href="./src/resources/task-group.ts">TaskGroup</a></code>
- <code><a href="./src/resources/task-group.ts">TaskGroupRunResponse</a></code>
- <code><a href="./src/resources/task-group.ts">TaskGroupStatus</a></code>
- <code><a href="./src/resources/task-group.ts">TaskGroupStatusEvent</a></code>
- <code><a href="./src/resources/task-group.ts">TaskGroupEventsResponse</a></code>
- <code><a href="./src/resources/task-group.ts">TaskGroupGetRunsResponse</a></code>

Methods:

- <code title="post /v1/tasks/groups">client.taskGroup.<a href="./src/resources/task-group.ts">create</a>({ ...params }) -> TaskGroup</code>
- <code title="get /v1/tasks/groups/{taskgroup_id}">client.taskGroup.<a href="./src/resources/task-group.ts">retrieve</a>(taskGroupID) -> TaskGroup</code>
- <code title="post /v1/tasks/groups/{taskgroup_id}/runs">client.taskGroup.<a href="./src/resources/task-group.ts">addRuns</a>(taskGroupID, { ...params }) -> TaskGroupRunResponse</code>
- <code title="get /v1/tasks/groups/{taskgroup_id}/events">client.taskGroup.<a href="./src/resources/task-group.ts">events</a>(taskGroupID, { ...params }) -> TaskGroupEventsResponse</code>
- <code title="get /v1/tasks/groups/{taskgroup_id}/runs">client.taskGroup.<a href="./src/resources/task-group.ts">getRuns</a>(taskGroupID, { ...params }) -> TaskGroupGetRunsResponse</code>
- <code title="get /v1/tasks/groups/{taskgroup_id}/runs/{run_id}">client.taskGroup.<a href="./src/resources/task-group.ts">retrieveRun</a>(runID, { ...params }) -> TaskRun</code>

# Monitor

Types:

- <code><a href="./src/resources/monitor.ts">AdvancedMonitorSettings</a></code>
- <code><a href="./src/resources/monitor.ts">CreateMonitorRequest</a></code>
- <code><a href="./src/resources/monitor.ts">Monitor</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorCompletionEvent</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorErrorEvent</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorEventStreamEvent</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorEventStreamResponseSettings</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorEventStreamSettings</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorSnapshotEvent</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorSnapshotOutput</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorSnapshotResponseSettings</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorSnapshotSettings</a></code>
- <code><a href="./src/resources/monitor.ts">MonitorWebhook</a></code>
- <code><a href="./src/resources/monitor.ts">PaginatedMonitorEvents</a></code>
- <code><a href="./src/resources/monitor.ts">PaginatedMonitorResponse</a></code>
- <code><a href="./src/resources/monitor.ts">UpdateMonitorEventStreamSettings</a></code>
- <code><a href="./src/resources/monitor.ts">UpdateMonitorRequest</a></code>

Methods:

- <code title="post /v1/monitors">client.monitor.<a href="./src/resources/monitor.ts">create</a>({ ...params }) -> Monitor</code>
- <code title="get /v1/monitors/{monitor_id}">client.monitor.<a href="./src/resources/monitor.ts">retrieve</a>(monitorID) -> Monitor</code>
- <code title="post /v1/monitors/{monitor_id}/update">client.monitor.<a href="./src/resources/monitor.ts">update</a>(monitorID, { ...params }) -> Monitor</code>
- <code title="get /v1/monitors">client.monitor.<a href="./src/resources/monitor.ts">list</a>({ ...params }) -> PaginatedMonitorResponse</code>
- <code title="post /v1/monitors/{monitor_id}/cancel">client.monitor.<a href="./src/resources/monitor.ts">cancel</a>(monitorID) -> Monitor</code>
- <code title="get /v1/monitors/{monitor_id}/events">client.monitor.<a href="./src/resources/monitor.ts">events</a>(monitorID, { ...params }) -> PaginatedMonitorEvents</code>
- <code title="post /v1/monitors/{monitor_id}/trigger">client.monitor.<a href="./src/resources/monitor.ts">trigger</a>(monitorID) -> void</code>

# [Beta](src/resources/beta/api.md)
3 changes: 0 additions & 3 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
// @ts-check
import tseslint from 'typescript-eslint';
import unusedImports from 'eslint-plugin-unused-imports';
import prettier from 'eslint-plugin-prettier';

export default tseslint.config(
{
Expand All @@ -14,11 +13,9 @@ export default tseslint.config(
plugins: {
'@typescript-eslint': tseslint.plugin,
'unused-imports': unusedImports,
prettier,
},
rules: {
'no-unused-vars': 'off',
'prettier/prettier': 'error',
'unused-imports/no-unused-imports': 'error',
'no-restricted-imports': [
'error',
Expand Down
3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "parallel-web",
"version": "0.4.1",
"version": "0.5.0",
"description": "The official TypeScript library for the Parallel API",
"author": "Parallel <support@parallel.ai>",
"types": "dist/index.d.ts",
Expand Down Expand Up @@ -36,7 +36,6 @@
"@typescript-eslint/eslint-plugin": "8.31.1",
"@typescript-eslint/parser": "8.31.1",
"eslint": "^9.39.1",
"eslint-plugin-prettier": "^5.4.1",
"eslint-plugin-unused-imports": "^4.1.4",
"iconv-lite": "^0.6.3",
"jest": "^29.4.0",
Expand Down
2 changes: 1 addition & 1 deletion scripts/bootstrap
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ set -e

cd "$(dirname "$0")/.."

if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ] && [ "$SKIP_BREW" != "1" ] && [ -t 0 ]; then
if [ -f "Brewfile" ] && [ "$(uname -s)" = "Darwin" ] && [ "${SKIP_BREW:-}" != "1" ] && [ -t 0 ]; then
brew bundle check >/dev/null 2>&1 || {
echo -n "==> Install Homebrew dependencies? (y/N): "
read -r response
Expand Down
2 changes: 2 additions & 0 deletions scripts/detect-breaking-changes
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ echo "==> Detecting breaking changes"
TEST_PATHS=(
tests/api-resources/top-level.test.ts
tests/api-resources/task-run.test.ts
tests/api-resources/task-group.test.ts
tests/api-resources/monitor.test.ts
tests/api-resources/beta/beta.test.ts
tests/api-resources/beta/task-run.test.ts
tests/api-resources/beta/task-group.test.ts
Expand Down
9 changes: 3 additions & 6 deletions scripts/fast-format
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,7 @@ if ! [ -z "$ESLINT_FILES" ]; then
fi

echo "==> Running prettier --write"
# format things eslint didn't
PRETTIER_FILES="$(grep '\.\(js\|json\)$' "$FILE_LIST" || true)"
if ! [ -z "$PRETTIER_FILES" ]; then
echo "$PRETTIER_FILES" | xargs ./node_modules/.bin/prettier \
--write --cache --cache-strategy metadata --no-error-on-unmatched-pattern \
'!**/dist' '!**/*.ts' '!**/*.mts' '!**/*.cts' '!**/*.js' '!**/*.mjs' '!**/*.cjs'
if ! [ -z "$FILE_LIST" ]; then
cat "$FILE_LIST" | xargs ./node_modules/.bin/prettier \
--write --cache --cache-strategy metadata --no-error-on-unmatched-pattern --ignore-unknown
fi
3 changes: 1 addition & 2 deletions scripts/format
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,4 @@ echo "==> Running eslint --fix"
./node_modules/.bin/eslint --fix .

echo "==> Running prettier --write"
# format things eslint didn't
./node_modules/.bin/prettier --write --cache --cache-strategy metadata . '!**/dist' '!**/*.ts' '!**/*.mts' '!**/*.cts' '!**/*.js' '!**/*.mjs' '!**/*.cjs'
./node_modules/.bin/prettier --write --cache --cache-strategy metadata .
3 changes: 3 additions & 0 deletions scripts/lint
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ set -e

cd "$(dirname "$0")/.."

echo "==> Running prettier --check"
./node_modules/.bin/prettier --check .

echo "==> Running eslint"
./node_modules/.bin/eslint .

Expand Down
9 changes: 8 additions & 1 deletion scripts/utils/postprocess-files.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,19 @@ async function postprocess() {

// strip out lib="dom", types="node", and types="react" references; these
// are needed at build time, but would pollute the user's TS environment
const transformed = code.replace(
let transformed = code.replace(
/^ *\/\/\/ *<reference +(lib="dom"|types="(node|react)").*?\n/gm,
// replace with same number of characters to avoid breaking source maps
(match) => ' '.repeat(match.length - 1) + '\n',
);

// TypeScript's declaration emitter collapses /** @ts-ignore */ onto the same
// line as the type declaration, which doesn't work. So we convert to // @ts-ignore
// on its own line to properly suppresses errors.
if (file.endsWith('.d.ts') || file.endsWith('.d.mts') || file.endsWith('.d.cts')) {
transformed = transformed.replace(/\/\*\* @ts-ignore\b[^*]*\*\/ /gm, '// @ts-ignore\n');
}

if (transformed !== code) {
console.error(`wrote ${path.relative(process.cwd(), file)}`);
await fs.promises.writeFile(file, transformed, 'utf8');
Expand Down
Loading
Loading