Skip to content

Batch API: add get_job_details and list_jobs short= parameter (Aug 2026 changes) - #46

Merged
tbeason merged 4 commits into
mainfrom
feat/batch-api-2026-08
Sep 17, 2026
Merged

tbeason merged 4 commits into
mainfrom
feat/batch-api-2026-08

Conversation

@tbeason

@tbeason tbeason commented Sep 8, 2026

Copy link
Copy Markdown
Owner

Summary

Tracks Databento's batch API changes (2026-08):

  • list_jobs(...; short=nothing) — new short::Union{Nothing,Bool} kwarg. short=true requests the condensed id / state / ts_received response. The default omits the parameter so the server default follows Databento's phased rollout (opt-in now → default → legacy response removed).
  • get_job_details(client; job_id) — new exported wrapper for GET /v0/batch.get_job_details, which is where per-job fields (record_count, cost_usd, ts_*, request params …) live going forward.
  • Docstrings, the guide's polling example (docs/src/guide/historical.md), the API reference page, and CHANGELOG.md ([Unreleased]) updated.

The July CME normalization changes need no code changes here — record decoding is delegated to DatabentoBinaryEncoding (see its companion PR). A note to that effect is in the changelog. StatType / TradingEvent are deliberately not re-exported yet, since that needs a DBN release + compat bump; they're reachable as DatabentoAPI.DBN.StatType meanwhile.

Tests

Added mock-driven tests in test/test_historical_batch.jl for the short parameter (omitted by default, true/false serialized) and for get_job_details.

julia +release --project=. -e 'using Pkg; Pkg.test()'
DatabentoAPI  | 1925   1925  59.8s

(Run on Julia 1.12.6; the default julia on my machine is a 1.13 rc whose Pkg stdlib does not precompile.)

🤖 Generated with Claude Code

https://claude.ai/code/session_01YBr6EZa1vHrJmPBoecSjRa

tbeason and others added 4 commits September 8, 2026 14:57
Tracks Databento's batch API changes (2026-08):
- list_jobs(...; short=nothing): short=true requests the condensed id/state/ts_received response; default omits the parameter so the server default follows the phased rollout
- get_job_details(client; job_id): new endpoint for full per-job details
- Docs, guide polling example, changelog, and mock-driven tests updated

Also notes in the changelog that the 2026-07 CME normalization changes need no code changes in this package (decoding is delegated to DatabentoBinaryEncoding).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YBr6EZa1vHrJmPBoecSjRa
Merging main brought in the v0.3.2 release, which had replaced the
`## [Unreleased]` heading this branch's entries were written under. Git
auto-merged cleanly but silently filed `get_job_details` and the
`list_jobs` `short=` entry under the already-released `[0.3.2] -
2026-09-10` section. Move them back under a fresh `## [Unreleased]`; the
0.3.2 section is byte-identical to main again.

Also names the concrete dependency release now that it exists: the CME
2026-07 support lands in DatabentoBinaryEncoding 0.1.7, and the note
points at `DatabentoAPI.DBN.StatType` / `.TradingEvent` for reaching the
new enums until this package re-exports them.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Versions the [Unreleased] batch API entries as [0.3.3] - 2026-09-17 and
bumps Project.toml 0.3.2 -> 0.3.3. Additive only: the new
get_job_details endpoint wrapper and the list_jobs short= keyword.

The DatabentoBinaryEncoding compat stays at "0.1.6", which already admits
0.1.7 under Julia's 0.x caret rule; StatType/TradingEvent are still not
re-exported here, so nothing requires the newer release.

Also adds the missing [0.3.3]/[0.3.2]/[0.3.1] compare links.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@tbeason
tbeason merged commit 1dee6ae into main Sep 17, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant