GitHub
05/11/2026, 11:11 PMRESTStream.get_http_request
This method allows setting multiple request arguments at once: headers, URL query parameters, etc.
class MyStream(RESTStream):
def get_http_request(self, *, page):
request = super().get_http_request(page=page)
request.params["page"] = page.next_page_token
return request
Docs: https://sdk.meltano.com/en/v0.54.0/classes/singer_sdk.RESTStream.html#singer_sdk.RESTStream.get_http_request
✨ New
• #3618 New RESTStream.get_http_request method to construct the HTTP request for a stream
• #3613 Normalize two-element oneOf schema members where one of them is the null type, into a single nullable schema
• #3612 Automatically quote fully-qualified table names based on the corresponding database dialect
• #3607 Allow customization of replication value comparisons for advancing state bookmark beyond the default "greater than or equal" check
• #3594 Use mdformat in tap, target and mapper templates to format markdown files
• #3582 Run zizmor to harden GitHub Action workflows in tap, target and mapper templates
• #3569 Normalize individual members in anyOf members in OpenAPI specs
• #3568 Normalize individual members in oneOf members in OpenAPI specs
• #3555 OpenAPI schema normalization now drops pattern keys to avoid issues in downstream consumers where they might not be able to parse the regex pattern
• #3513 Use dynamic versioning in tap, target and mapper templates
• #3510 Deprecate BasePageNumberPaginator and BaseOffsetPaginator in favor of PageNumberPaginator and OffsetPaginator, respectively
• #3500 Use singer-sdk/<version> as the default User-Agent header
• #3373 Support arbitrary properties for x-sql-datatype in x-sql-datatype-properties
• #3435 Automatic retries of OAuth token requests
• #3407 Set Stream.replication_key in metadata as the default replication key
• #3415 Add flattening_separator as an additional flattening config -- Thanks @iamlorax!
• #3399 Add AGENTS.md/CLAUDE.md to templates
🐛 Fixes
• #3611 Force streams with custom state partitioning keys to be non-resumable
• #3605 Remove extremely noisy debug logging from expression evaluation
• #3595 Support simpleeval 1.0.5+ by subclassing simpleeval.EvalWithCompoundTypes
• #3580 Use requests~=2.33.0 in tap and target templates
• #3578 Align tap, target and mapper pyproject configurations
• #3577 Make tap, target and mapper GitHub workflows consistent
• #3576 Match default settings to selected authentication method
• #3573 Use strict = true in pytest config
• #3560 Stream maps expressions referencing modules broken
• #3558 Use only astral-sh/setup-uv in GitHub workflows
• #3556 Ensure parent stream records are emitted in auto-generated tap tests
• #3557 Configure package version in templates to be dynamic
• #3553 Resolve `$ref`s in additionalProperties
• #3535 Emit a warning when running on a (near) EOL Python
• #3534 Update SQL tap and target templates to reflect module reorganization
• #3530 The BasicAuthenticator class is no longer deprecated
• #3515 Remove .secrets directory and instead ignore any config.json file at the root
• #3514 Remove references to legacy user_agent setting
• #3504 Update templates
• #3512 Remove legacy license classifier from project metadata (made redundant by PEP 639 metadata)
• #3508 Correctly load private key with passphrase in JWT-based authenticator
• #3503 Remove # noqa: ERA001 comments from templates
• #3480 Update templates
• #3474 Update templates
• #3465 Treat sqlalchemy.types.Float and sqlalchemy.types.Numeric as distinct types when mapping them to JSON schema in preparation for SQLAlchemy 2.1
• #3462 Uncap optional s3fs dependency to prevent it from going stale
• #3461 Require Tox 4.32+ in templates
• #3460 Add agent instruction to keep project settings in sync with meltano.yml
• #3424 Make the context parameter of Stream.get_replication_key_signpost() optional and default to None
• #3443 Use a more strict configuration for pytest and mypy in templates
⚙️ Under the Hood
• #3624 Update types to match new inline type annotations in Requests
• #3622 Split type parameters for Singer reader and writer protocols
• #3610 Handle state increment logic for state partitioning keys in state manager helper
• #3589 Import DatetimeErrorTreatmentEnum from singer_sdk.helpers.conform
• #3587 Import TypeConformanceLevel from singer_sdk.helpers.conform
• #3581 Use dict(...) to copy the default functions supported in stream maps
• #3575 Rename IgnorableSyncError -> SkippableSyncError
• #3541 Documented removals slated for v0.57
• #3540 Remove unused Stream.reset_state_progress_markers method
• #3539 Use the @warnings.deprecated decorator directly
• #3538 Use only up to the month part of the EOL dates
• #3536 Documented removals slated for v0.56 and updated warning messages
• #3529 Removed the PluginBase.config_from_cli_args method, which has not been used for a while
• #3528 Moved `DatetimeErrorTr…
meltano/sdk