Interpolate {name} placeholders in template from keyword arguments.
Wrapper over transform() that allows None to be passed.
See transform() for more details.
Wrapper over async_transform() that allows None to be passed.
See async_transform() for more details.
Higher order function that takes one of our bound API methods and wraps it
to support returning the raw APIResponse object directly.
Higher order function that takes one of our bound API methods and wraps it
to support streaming and returning the raw APIResponse object directly.
Higher order function that takes one of our bound API methods and wraps it
to support returning the raw APIResponse object directly.
Higher order function that takes one of our bound API methods and wraps it
to support streaming and returning the raw APIResponse object directly.
Create a dict of type RequestOptions without keys of NotGiven values.
To explicitly omit something from being sent in a request, use omit.
# as the default `Content-Type` header is `application/json` that will be sent
client.post("/upload/files", files={"file": b"my raw file content"})
# you can't explicitly override the header as it has to be dynamically generated
# to look something like: 'multipart/form-data; boundary=0d8382fcf5f8c3be01ca2e11002d2983'
client.post(..., headers={"Content-Type": "multipart/form-data"})
# instead you can remove the default `application/json` header by passing omit
client.post(..., headers={"Content-Type": omit})For parameters with a meaningful None value, we need to distinguish between the user explicitly passing None, and the user not passing the parameter at all.
User code shouldn't need to use not_given directly.
For example:
def create(timeout: Timeout | None | NotGiven = not_given): ...
create(timeout=1) # 1s timeout
create(timeout=None) # No timeout
create() # Default timeout behavior