Skip to content

feat: remove InputStream-based lab report upload methods and add lab configuration fields#79

Open
fern-api[bot] wants to merge 1 commit intomainfrom
fern-bot/2026-03-20T16-42Z
Open

feat: remove InputStream-based lab report upload methods and add lab configuration fields#79
fern-api[bot] wants to merge 1 commit intomainfrom
fern-bot/2026-03-20T16-42Z

Conversation

@fern-api
Copy link
Contributor

@fern-api fern-api bot commented Mar 20, 2026

Version Bump: Removed public parserCreateJob methods that accept InputStream parameters - existing callers will get compile errors.

  • The SDK now supports logging configuration through the new LogConfig class, allowing you to control log levels and output destinations for HTTP requests and responses. Additionally, the Stream class adds support for SSE event-level discrimination with new fromSseWithEventDiscrimination() methods for handling discriminated unions in server-sent events.
  • The RawLabReportClient.parserCreateJob() methods that accept InputStream parameters have been removed. Use the File-based parserCreateJob() methods instead. Additionally, new optional configuration fields are now available: labAccountId and labSlug in CreateLabTestRequest, labSlug in LabTestsGetMarkersRequest, and appointmentNotes in RequestAppointmentRequest.
  • The parentId field has been removed from ClientFacingOrder. This field was deprecated and is no longer available. Additionally, new optional fields have been added: vitalIosSdkVersion and vitalAndroidSdkVersion in ManualConnectionData, grantedPermissions for tracking user permissions, accessNotes in Address, appointmentNotes in AppointmentRescheduleRequest, and clinicalNotes in ClientFacingOrder.
  • The SDK now provides enhanced order tracking with new optional statusDetail field in ClientFacingOrderEvent and strongly-typed OrderTransactionStatus enum for transaction status. Added optional orderTransaction field to lab results and accessNotes field to patient address types. The deprecated jobId field has been removed from ParsingJob - use the id field instead.
  • The SDK now supports derived readiness column expressions in query operations. The query builder APIs (QueryGroupByItem and QuerySelectItem) can now handle DerivedReadinessColumnExpr types. Additionally, US addresses now support optional access notes, and UserInfo uses the more specific UserAddress type.
  • The SDK now includes configurable logging support with LogConfig and Logger classes. Logging is silent by default and can be enabled with custom log levels and output targets. Two new service clients are available: CompendiumClient for accessing compendium data and LabAccountClient for lab account management. Additionally, new provider options have been added including Sonora Quest, Samsung Health, Tandem Source, and others across various service categories.
  • New Compendium API client available with search() and convert() methods for food and exercise data. The SDK also adds Server-Sent Events parsing utilities for real-time data streaming.
  • New compendium and lab account management capabilities are now available. The SDK includes new request classes for compendium search and conversion operations, plus a LabAccountClient for managing team lab accounts.
  • New lab account management capabilities available through RawLabAccountClient with methods to retrieve and filter team lab accounts. Order creation now supports an optional clinicalNotes field for adding medical context to lab test orders.
  • Request builders now support custom properties through new additionalProperty() and additionalProperties() methods. These methods allow passing arbitrary key-value pairs to request objects for advanced use cases.
  • New convenience methods additionalProperty() and additionalProperties() available on all request builders for setting additional metadata on API requests.
  • New builder methods additionalProperty() and additionalProperties() are now available on all vitals request builders, allowing you to set custom key-value pairs for extensibility.
  • New additionalProperty(String, Object) and additionalProperties(Map<String, Object>) methods are now available on all vitals request builders, enabling custom properties to be added to API requests.
  • The SDK now supports additional properties on request builders through new additionalProperty() and additionalProperties() methods. Appointment booking requests now accept an optional appointmentNotes field for custom notes.
  • The SDK now supports additional properties on response objects through new additionalProperty() and additionalProperties() builder methods. A new CanonicalCandidate type is available for biomarker canonicalization operations, providing access to LOINC codes, CPT codes, aliases, and confidence scoring metadata.
  • New appointmentNotes field available on ClientFacingAppointment for storing appointment-specific notes. Additional builder utility methods added across multiple classes for improved API ergonomics.
  • New builder methods additionalProperty() and additionalProperties() are now available on all type classes, enabling flexible setting of additional properties during object construction.
  • New additionalProperty() and additionalProperties() methods are now available on all model builder classes. These methods provide a fluent API for setting custom properties on model objects while maintaining backward compatibility.
  • New builder methods additionalProperty() and additionalProperties() are now available on all client-facing type builders, allowing you to set custom properties on objects using a fluent interface.
  • New ClientFacingLabAccount class available for managing laboratory account information. New lab report parsing job event types (ClientFacingLabReportParsingJobCreatedEvent and ClientFacingLabReportParsingJobUpdatedEvent) added for tracking parsing job lifecycle. Enhanced builder patterns across existing classes now support additional properties for better extensibility.
  • New additionalProperty() and additionalProperties() builder methods available on ClientFacing data types. These methods allow setting custom additional properties on objects through a fluent API.
  • New builder methods additionalProperty() and additionalProperties() are now available on all client-facing model types, allowing custom key-value data to be set during object construction.
  • The SDK now includes additionalProperty() and additionalProperties() methods on all client-facing type builders, enabling better handling of dynamic JSON fields and improved extensibility for unknown properties.
  • The SDK now supports setting additional properties on client-facing types through enhanced builder methods. Two new methods are available on all builders: additionalProperty(String key, Object value) for setting individual properties and additionalProperties(Map<String, Object> additionalProperties) for setting multiple properties at once.
  • New compendium search and conversion capabilities added. The SDK now supports filtering lab tests by specific providers (LabCorp, Quest, Bioreference, Sonora Quest) and converting provider IDs between different lab systems.
  • The SDK now supports setting additional properties on model builders through new additionalProperty() and additionalProperties() methods. New GetTeamLabAccountsResponse type available.
  • New builder methods for additional properties on grouped data types. The additionalProperty() and additionalProperties() methods are now available on all grouped response builders, allowing dynamic property handling.
  • New builder methods additionalProperty(key, value) and additionalProperties(map) are now available on all grouped data type builders. These methods allow setting additional properties when constructing grouped objects using the builder pattern.
  • The SDK now includes fluent builder methods for managing additional properties on data model classes. New additionalProperty() and additionalProperties() methods allow setting arbitrary key-value pairs on builders, enabling more flexible object construction.
  • The SDK now supports setting additional properties on model builders through new additionalProperty() and additionalProperties() methods. A new PerLabCandidate type is also available for lab candidate data.
  • The SDK now supports additional property methods on all model builders for better extensibility. New provider types TANDEM_SOURCE and SAMSUNG_HEALTH are available. Added ProviderIdConversionResponse class for provider ID mapping operations.
  • The SDK now supports compendium search functionality with new SearchCompendiumResponse, RelatedCandidate, SearchMode, and ResultMetadataGender types. A new optional gender field is available on ResultMetadata.
  • New UsState enum and UserAddress class are now available for handling US state codes and structured address data. All existing builder classes now support additionalProperty() and additionalProperties() methods for better extensibility.
  • New builder methods additionalProperty() and additionalProperties() are now available on WorkoutColumnExpr, WorkoutDurationTimeseriesExpr, and WorkoutV2InDb builders to support setting custom properties.

…configuration fields

Remove InputStream-based parserCreateJob overloads from RawLabReportClient to
simplify the API surface. Add labAccountId and labSlug parameters to
CreateLabTestRequest, labSlug parameter to LabTestsGetMarkersRequest, and
appointmentNotes to RequestAppointmentRequest. Update lab parameter type
in LabTestsGetPscAppointmentAvailabilityRequest to use enum.

Key changes:
- Remove parserCreateJob(InputStream, String) and related overload methods
- Add optional labAccountId and labSlug fields to CreateLabTestRequest
- Add optional labSlug field to LabTestsGetMarkersRequest
- Add optional appointmentNotes field to RequestAppointmentRequest
- Change lab parameter from String to AppointmentPscLabs enum in LabTestsGetPscAppointmentAvailabilityRequest

🌿 Generated with Fern
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.

0 participants