Skip to content
Open
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
7 changes: 4 additions & 3 deletions .fern/metadata.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"cliVersion": "3.35.1",
"cliVersion": "4.67.1",
"generatorName": "fernapi/fern-python-sdk",
"generatorVersion": "4.46.6",
"generatorVersion": "4.60.1",
"generatorConfig": {
"client_class_name": "Vital",
"inline_request_params": false,
Expand All @@ -10,5 +10,6 @@
"use_pydantic_field_aliases": true
}
},
"sdkVersion": "2.1.569"
"originGitCommit": "7cdbf92aef7509e662d9bc04ace5b7e1018ecad0",
"sdkVersion": "3.0.0"
}
1 change: 1 addition & 0 deletions .fernignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# Specify files that shouldn't be modified by Fern

README.md
changelog.md
32 changes: 32 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
## 3.0.0 - 2026-04-13
* Several breaking changes are included in this release:
* The `LinkBulkExportRequestTeamId`, `LinkBulkImportRequestTeamId`, `LinkBulkPauseRequestTeamId`, `LinkBulkTriggerHistoricalPullRequestTeamId`, and `LinkListBulkOpsRequestTeamId` enum types have been removed from `vital.link`. Update any code that imports or references these types.
* The `INSULIN_INJECTION` member has been removed from `IntervalTimeseriesExprTimeseries`. Callers using `.visit(insulin_injection=...)` must remove that argument.
* `AppointmentPscLabs` has changed from `Literal["quest"]` to a `StrEnum`; code that compares against the string `"quest"` directly should use `AppointmentPscLabs.QUEST` instead.
* New in this release: HTTP request/response logging with automatic sensitive-header redaction is now available via `LogConfig`/`Logger`, a `status_code` property has been added to `BaseHttpResponse`, and `AppointmentPscLabs` now includes the new `SONORA_QUEST` value.
* **Breaking changes:**
* The `file` parameter of `parser_create_job` (on both `LabReportClient` and `AsyncLabReportClient`) has changed from `core.File` to `typing.List[core.File]`. Callers must now pass a list, e.g. replace `file=my_file` with `file=[my_file]`.
* The following types have been removed from the top-level `vital` namespace: `LinkBulkExportRequestTeamId`, `LinkBulkImportRequestTeamId`, `LinkBulkPauseRequestTeamId`, `LinkBulkTriggerHistoricalPullRequestTeamId`, and `LinkListBulkOpsRequestTeamId`.
**New capabilities:**
* The SDK now exposes three new submodules — `vital.compendium`, `vital.lab_account`, and `vital.order_transaction` — along with many new types including `CanonicalCandidate`, `ClientFacingLabAccount`, `ClientFacingOrderTransaction`, `OrderSummary`, `OrderStatusDetail`, `SearchCompendiumResponse`, `UsState`, `UserAddress`, and others. An optional `logging` parameter is now accepted by the client wrappers.
* The SDK now supports additional optional parameters across lab test and appointment methods. New `lab_slug` and `lab_account_id` parameters are available on lab test create/update and `get_markers` methods; `order_transaction_id` can now be used to filter order listings; `appointment_notes` and `clinical_notes` fields are available on phlebotomy appointment requests and order creation respectively. The `get_psc_appointment_availability` method now accepts a required `lab` parameter (of type `AppointmentPscLabs`) and an optional `allow_stale` flag, and `book_psc_appointment` supports optional `idempotency_key` and `idempotency_error` parameters. Two new types, `AppointmentPscLabs` and `Labs`, are now exported from the SDK.
* The `get_psc_appointment_availability` method now requires a `lab` parameter of type `AppointmentPscLabs` (previously the lab was hardcoded to `"quest"`). Callers must now pass `lab=AppointmentPscLabs(...)` explicitly.
* Several new optional parameters have also been added across lab test and order APIs: `lab_slug` and `lab_account_id` on lab test create/update, `lab_slug` on `get_markers`, `order_transaction_id` on order listing, `appointment_notes` on PSC appointment reschedule, `clinical_notes` on order creation, and `idempotency_key`/`idempotency_error` on PSC appointment booking. Two new types (`AppointmentPscLabs`, `Labs`) are now available.
* The `team_id` parameter has been removed from the following `link` client methods: `list_bulk_ops`, `bulk_import`, `bulk_trigger_historical_pull`, `bulk_export`, and `bulk_pause`. Callers passing `team_id` must remove that argument. The associated enum types (`LinkBulkExportRequestTeamId`, `LinkBulkImportRequestTeamId`, `LinkBulkPauseRequestTeamId`, `LinkBulkTriggerHistoricalPullRequestTeamId`, `LinkListBulkOpsRequestTeamId`) have also been removed and any imports of them will break.
* The `connect_manual_provider` method now accepts two new optional parameters—`vital_ios_sdk_version` and `vital_android_sdk_version` (sent as request headers) and `granted_permissions` (sent in the request body)—enabling richer manual provider connections from mobile SDKs.
* The `address` parameter type in user client methods (`create_user_info` / `update_user_info`) has changed from `Address` to `UserAddress`. Callers must import `UserAddress` from `vital` and replace any `Address(...)` instantiation with `UserAddress(...)`.
* The `Jpeg.content` and `Png.content` fields have changed from `str` to `bytes`, and `ParsingJob.job_id` has been removed; update any code that reads these fields accordingly.
* New capabilities include `compendium`, `lab_account`, and `order_transaction` sub-clients on `Vital`/`AsyncVital`, an optional `logging` parameter on both client constructors, richer `ClientFacingOrder` fields (`last_event`, `clinical_notes`, `origin`, `order_transaction`), new insulin-injection metadata fields, additional `OrderStatus` enum values, and a `gender` field on `ResultMetadata`.
* The SDK now includes two new resource clients: `client.compendium` provides `search()` and `convert()` methods for querying and converting lab test compendium data across labs, and `client.lab_account` provides a `get_team_lab_accounts()` method for retrieving your team's lab account information. A new structured logging system (`ILogger`, `ConsoleLogger`, `Logger`, `LogConfig`, `create_logger`) is also available from `vital.core`.
* The SDK now includes a new `order_transaction` client namespace with three methods: `get_transaction()` for retrieving order transaction details, `get_transaction_result()` for fetching raw lab results, and `get_transaction_result_pdf()` for streaming PDF lab result reports. Both synchronous and asynchronous clients are available.
* The SDK now exposes a large set of new types supporting lab account management (`ClientFacingLabAccount`, `LabAccountStatus`, `LabAccountDelegatedFlow`, `GetTeamLabAccountsResponse`), order transactions (`ClientFacingOrderTransaction`, `GetOrderTransactionResponse`, `OrderTransactionStatus`), compendium search and conversion (`SearchCompendiumResponse`, `ConvertCompendiumResponse`, `SearchMode`), and insulin injection detail enums (`ClientFacingInsulinInjectionSampleBolusPurpose`, `ClientFacingInsulinInjectionSampleDeliveryForm`, `ClientFacingInsulinInjectionSampleDeliveryMode`). New optional fields have been added to `AppointmentBookingRequest` (async confirmation controls), `AppointmentRescheduleRequest`, `Address`, and `ClientFacingAppointment`. New enum values `SONORA_QUEST` (AppointmentProvider) and `INSULIN_PUMP` (device/ECG source types) are also available.
* The SDK now supports expanded lab account management with new `ClientFacingLabAccount`, `LabAccountStatus`, and `LabAccountDelegatedFlow` types. New order transaction models (`ClientFacingOrderTransaction`, `GetOrderTransactionResponse`, `OrderOrigin`) and insulin injection timeseries types (`InsulinInjectionTimeseriesExpr`, `ClientFacingInsulinInjectionSampleDeliveryMode`) are available. Additional new types include `DerivedReadinessColumnExpr` for readiness data queries, `CompendiumSearchLabs`/`ConvertCompendiumResponse` for lab compendium conversion, and lab report parsing job event models. Several existing models have new optional fields (`recovery_readiness_score` on `ClientFacingSleep`, `status_detail` on `ClientFacingOrderEvent`, `order_transaction` on `LabResultsRaw`), and multiple enums have been extended with new values including `SONORA_QUEST`, `CRL`, `SAMSUNG_HEALTH`, `INSULIN_PUMP`, `CORRECTED`, `LAB_PROCESSING_BLOCKED`, and `DERIVED_READINESS`.
* The SDK now includes several new types and capabilities:
* New models for compendium search: `SearchCompendiumResponse`, `PerLabCandidate`, `RelatedCandidate`, and `ProviderIdConversionResponse`
* New order-related types: `OrderStatusDetail`, `OrderSummary`, and `OrderTransactionStatus`
* New address types `UserAddress` and `UsState`, plus an optional `access_notes` field on all patient address models (`PatientAddress`, `PatientAddressCompatible`, `PatientAddressWithValidation`, `UsAddress`)
* New provider values: `TANDEM_SOURCE` and `SAMSUNG_HEALTH` in `Providers`; `TANDEM_SOURCE` in `PasswordProviders`; `APERO` and `PVERIFY` in `PayorCodeExternalProvider`
* New enums: `ParsingJobFailureReason`, `SearchMode`, and `ResultMetadataGender`
* New query expression types (`AwakeningsValueMacroExpr`, `DerivedReadinessColumnExpr`, `InsulinInjectionTimeseriesExpr`) available in `QueryGroupByItem` and `QuerySelectItem`
* `RECOVERY_READINESS_SCORE` added to `SleepColumnExprSleep`

Loading
Loading