SDKs
Both SDKs are generated from the same OpenAPI spec that powers this reference. Method names, parameters, and response types match the spec exactly. When the API changes additively, the next SDK release picks up the new fields without you touching anything.
Published SDK packages will land at @pivotal/api (npm) and pivotal (PyPI). Until then, generate locally with fern generate --group local-sdks against this repo. The hand-rolled snippets below show the shape — install steps are coming with the first published release.
TypeScript / Node
Once published:
Highlights:
asynciterator on everylist*method handles cursor pagination for you.for awaitwalks the full set.- Strict types generated from the schema — autocomplete on request bodies, return values typed by
operationId. - Configurable fetcher. Inject your own
fetchfor retries, tracing, or test mocks. - Bundle size under 30 KB minified+gzipped (rolled from spec, no runtime bloat).
Python
Once published:
Highlights:
- Pydantic v2 models for every request and response.
- Generator-based pagination —
list()yields rows, walks the cursor under the hood. httpxunder the hood with sane timeouts and connection pooling.- Async client at
pivotal.AsyncPivotalApiwith the same surface.
Other languages
The OpenAPI spec is the contract. Generate a client in your language of choice from:
Recommended generators:
- Go —
oapi-codegen - Ruby —
openapi-generatorwithrubytarget - C# —
nswagoropenapi-generator - Rust —
progenitororopenapi-generator
If you generate against the spec yourself, the names of request bodies and response shapes match the operationIds — createCustomer, listOnboardings, etc. — so cross-referencing this site stays straightforward.
Versioning the SDKs
SDK versions follow semver:
- Patch (
1.0.x) — generator updates, bug fixes. - Minor (
1.x.0) — new endpoints, new optional fields, new enum values. Always backwards-compatible. - Major (
x.0.0) — only when the underlying API ships av2.
Pin to a major version in production. Renovate / Dependabot can safely auto-bump minors.
Reporting SDK bugs
If the SDK behaves differently than this reference says it should, that’s a bug in the generator config. Email help@pivotal.app with the SDK version (pivotal.__version__ / PivotalApi.VERSION), the method you called, and the response you got.