Compare commits
11 Commits
Author | SHA1 | Date | |
---|---|---|---|
a1c41cbd17 | |||
a4f6bb2a25 | |||
c05c588768 | |||
6d4b848568 | |||
d643fde917 | |||
19b6cb7496 | |||
37fb483ddf | |||
dc55b70536 | |||
c88eab236b | |||
f661f86533 | |||
18b5b998a8 |
1
.gitignore
vendored
1
.gitignore
vendored
@ -21,3 +21,4 @@ dmypy.json
|
||||
|
||||
/coverage.xml
|
||||
/.coverage
|
||||
.vscode
|
26
README.md
26
README.md
@ -1,11 +1,13 @@
|
||||
# PhotosAPI_Client
|
||||
A client library for accessing END PLAY Photos
|
||||
|
||||
A client library for accessing Photos API
|
||||
|
||||
## Usage
|
||||
|
||||
First, create a client:
|
||||
|
||||
```python
|
||||
from PhotosAPI_Client import Client
|
||||
from photosapi_client import Client
|
||||
|
||||
client = Client(base_url="https://api.example.com")
|
||||
```
|
||||
@ -13,7 +15,7 @@ client = Client(base_url="https://api.example.com")
|
||||
If the endpoints you're going to hit require authentication, use `AuthenticatedClient` instead:
|
||||
|
||||
```python
|
||||
from PhotosAPI_Client import AuthenticatedClient
|
||||
from photosapi_client import AuthenticatedClient
|
||||
|
||||
client = AuthenticatedClient(base_url="https://api.example.com", token="SuperSecretToken")
|
||||
```
|
||||
@ -21,9 +23,9 @@ client = AuthenticatedClient(base_url="https://api.example.com", token="SuperSec
|
||||
Now call your endpoint and use your models:
|
||||
|
||||
```python
|
||||
from PhotosAPI_Client.models import MyDataModel
|
||||
from PhotosAPI_Client.api.my_tag import get_my_data_model
|
||||
from PhotosAPI_Client.types import Response
|
||||
from photosapi_client.models import MyDataModel
|
||||
from photosapi_client.api.my_tag import get_my_data_model
|
||||
from photosapi_client.types import Response
|
||||
|
||||
my_data: MyDataModel = get_my_data_model.sync(client=client)
|
||||
# or if you need more info (e.g. status_code)
|
||||
@ -33,9 +35,9 @@ response: Response[MyDataModel] = get_my_data_model.sync_detailed(client=client)
|
||||
Or do the same thing with an async version:
|
||||
|
||||
```python
|
||||
from PhotosAPI_Client.models import MyDataModel
|
||||
from PhotosAPI_Client.api.my_tag import get_my_data_model
|
||||
from PhotosAPI_Client.types import Response
|
||||
from photosapi_client.models import MyDataModel
|
||||
from photosapi_client.api.my_tag import get_my_data_model
|
||||
from photosapi_client.types import Response
|
||||
|
||||
my_data: MyDataModel = await get_my_data_model.asyncio(client=client)
|
||||
response: Response[MyDataModel] = await get_my_data_model.asyncio_detailed(client=client)
|
||||
@ -64,6 +66,7 @@ client = AuthenticatedClient(
|
||||
There are more settings on the generated `Client` class which let you control more runtime behavior, check out the docstring on that class for more info.
|
||||
|
||||
Things to know:
|
||||
|
||||
1. Every path/method combo becomes a Python module with four functions:
|
||||
1. `sync`: Blocking request that returns parsed data (if successful) or `None`
|
||||
1. `sync_detailed`: Blocking request that always returns a `Request`, optionally with `parsed` set if the request was successful.
|
||||
@ -72,10 +75,12 @@ Things to know:
|
||||
|
||||
1. All path/query params, and bodies become method arguments.
|
||||
1. If your endpoint had any tags on it, the first tag will be used as a module name for the function (my_tag above)
|
||||
1. Any endpoint which did not have a tag will be in `PhotosAPI_Client.api.default`
|
||||
1. Any endpoint which did not have a tag will be in `photosapi_client.api.default`
|
||||
|
||||
## Building / publishing this Client
|
||||
|
||||
This project uses [Poetry](https://python-poetry.org/) to manage dependencies and packaging. Here are the basics:
|
||||
|
||||
1. Update the metadata in pyproject.toml (e.g. authors, version)
|
||||
1. If you're using a private repository, configure it with Poetry
|
||||
1. `poetry config repositories.<your-repository-name> <url-to-your-repository>`
|
||||
@ -83,6 +88,7 @@ This project uses [Poetry](https://python-poetry.org/) to manage dependencies a
|
||||
1. Publish the client with `poetry publish --build -r <your-repository-name>` or, if for public PyPI, just `poetry publish --build`
|
||||
|
||||
If you want to install this client into another project without publishing it (e.g. for development) then:
|
||||
|
||||
1. If that project **is using Poetry**, you can simply do `poetry add <path-to-this-client>` from that project
|
||||
1. If that project is not using Poetry:
|
||||
1. Build a wheel with `poetry build -f wheel`
|
||||
|
6
config.yaml
Normal file
6
config.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
project_name_override: PhotosAPI_Client
|
||||
package_name_override: photosapi_client
|
||||
post_hooks:
|
||||
- "autoflake -i -r --remove-all-unused-imports --remove-unused-variables --ignore-init-module-imports photosapi_client/"
|
||||
- "isort photosapi_client/"
|
||||
- "black photosapi_client/"
|
@ -34,6 +34,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -54,7 +55,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -123,7 +124,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Album, Any, HTTPValidationError]]
|
||||
Union[Album, Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -186,7 +187,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Album, Any, HTTPValidationError]]
|
||||
Union[Album, Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -25,6 +25,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
}
|
||||
|
||||
|
||||
@ -40,7 +41,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -104,7 +105,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -161,7 +162,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -31,6 +31,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -47,7 +48,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -113,7 +114,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[HTTPValidationError, SearchResultsAlbum]]
|
||||
Union[HTTPValidationError, SearchResultsAlbum]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -170,7 +171,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[HTTPValidationError, SearchResultsAlbum]]
|
||||
Union[HTTPValidationError, SearchResultsAlbum]
|
||||
"""
|
||||
|
||||
return (
|
@ -38,6 +38,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -60,7 +61,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -141,7 +142,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[AlbumModified, Any, HTTPValidationError]]
|
||||
Union[AlbumModified, Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -216,7 +217,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[AlbumModified, Any, HTTPValidationError]]
|
||||
Union[AlbumModified, Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -38,6 +38,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -60,7 +61,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -141,7 +142,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[AlbumModified, Any, HTTPValidationError]]
|
||||
Union[AlbumModified, Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -216,7 +217,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[AlbumModified, Any, HTTPValidationError]]
|
||||
Union[AlbumModified, Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -27,6 +27,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"data": form_data.to_dict(),
|
||||
}
|
||||
|
||||
@ -44,7 +45,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -98,7 +99,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, Token]]
|
||||
Union[Any, HTTPValidationError, Token]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -145,7 +146,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, Token]]
|
||||
Union[Any, HTTPValidationError, Token]
|
||||
"""
|
||||
|
||||
return (
|
@ -25,6 +25,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
}
|
||||
|
||||
|
||||
@ -40,7 +41,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -104,7 +105,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -161,7 +162,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -15,6 +15,7 @@ def _get_kwargs(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
lat: Union[Unset, None, float] = UNSET,
|
||||
@ -31,6 +32,8 @@ def _get_kwargs(
|
||||
|
||||
params["caption"] = caption
|
||||
|
||||
params["token"] = token
|
||||
|
||||
params["page"] = page
|
||||
|
||||
params["page_size"] = page_size
|
||||
@ -49,6 +52,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -61,6 +65,9 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
if response.status_code == HTTPStatus.BAD_REQUEST:
|
||||
response_400 = cast(Any, None)
|
||||
return response_400
|
||||
if response.status_code == HTTPStatus.UNAUTHORIZED:
|
||||
response_401 = cast(Any, None)
|
||||
return response_401
|
||||
if response.status_code == HTTPStatus.NOT_FOUND:
|
||||
response_404 = cast(Any, None)
|
||||
return response_404
|
||||
@ -68,7 +75,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
response_422 = cast(Any, None)
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -88,6 +95,7 @@ def sync_detailed(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
lat: Union[Unset, None, float] = UNSET,
|
||||
@ -96,12 +104,13 @@ def sync_detailed(
|
||||
) -> Response[Union[Any, SearchResultsPhoto]]:
|
||||
"""Photo Find
|
||||
|
||||
Find a photo by filename
|
||||
Find a photo by filename, caption, location or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
lat (Union[Unset, None, float]):
|
||||
@ -121,6 +130,7 @@ def sync_detailed(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
lat=lat,
|
||||
@ -142,6 +152,7 @@ def sync(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
lat: Union[Unset, None, float] = UNSET,
|
||||
@ -150,12 +161,13 @@ def sync(
|
||||
) -> Optional[Union[Any, SearchResultsPhoto]]:
|
||||
"""Photo Find
|
||||
|
||||
Find a photo by filename
|
||||
Find a photo by filename, caption, location or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
lat (Union[Unset, None, float]):
|
||||
@ -167,7 +179,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, SearchResultsPhoto]]
|
||||
Union[Any, SearchResultsPhoto]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -175,6 +187,7 @@ def sync(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
lat=lat,
|
||||
@ -189,6 +202,7 @@ async def asyncio_detailed(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
lat: Union[Unset, None, float] = UNSET,
|
||||
@ -197,12 +211,13 @@ async def asyncio_detailed(
|
||||
) -> Response[Union[Any, SearchResultsPhoto]]:
|
||||
"""Photo Find
|
||||
|
||||
Find a photo by filename
|
||||
Find a photo by filename, caption, location or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
lat (Union[Unset, None, float]):
|
||||
@ -222,6 +237,7 @@ async def asyncio_detailed(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
lat=lat,
|
||||
@ -241,6 +257,7 @@ async def asyncio(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
lat: Union[Unset, None, float] = UNSET,
|
||||
@ -249,12 +266,13 @@ async def asyncio(
|
||||
) -> Optional[Union[Any, SearchResultsPhoto]]:
|
||||
"""Photo Find
|
||||
|
||||
Find a photo by filename
|
||||
Find a photo by filename, caption, location or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
lat (Union[Unset, None, float]):
|
||||
@ -266,7 +284,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, SearchResultsPhoto]]
|
||||
Union[Any, SearchResultsPhoto]
|
||||
"""
|
||||
|
||||
return (
|
||||
@ -275,6 +293,7 @@ async def asyncio(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
lat=lat,
|
@ -1,4 +1,5 @@
|
||||
from http import HTTPStatus
|
||||
from io import BytesIO
|
||||
from typing import Any, Dict, Optional, Union, cast
|
||||
|
||||
import httpx
|
||||
@ -6,7 +7,7 @@ import httpx
|
||||
from ... import errors
|
||||
from ...client import AuthenticatedClient, Client
|
||||
from ...models.http_validation_error import HTTPValidationError
|
||||
from ...types import Response
|
||||
from ...types import File, Response
|
||||
|
||||
|
||||
def _get_kwargs(
|
||||
@ -25,12 +26,14 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
}
|
||||
|
||||
|
||||
def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[Any, HTTPValidationError]]:
|
||||
def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[Any, File, HTTPValidationError]]:
|
||||
if response.status_code == HTTPStatus.OK:
|
||||
response_200 = cast(Any, response.json())
|
||||
response_200 = File(payload=BytesIO(response.content))
|
||||
|
||||
return response_200
|
||||
if response.status_code == HTTPStatus.NOT_FOUND:
|
||||
response_404 = cast(Any, None)
|
||||
@ -40,12 +43,12 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
|
||||
def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[Any, HTTPValidationError]]:
|
||||
def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[Any, File, HTTPValidationError]]:
|
||||
return Response(
|
||||
status_code=HTTPStatus(response.status_code),
|
||||
content=response.content,
|
||||
@ -58,7 +61,7 @@ def sync_detailed(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Response[Union[Any, HTTPValidationError]]:
|
||||
) -> Response[Union[Any, File, HTTPValidationError]]:
|
||||
"""Photo Get
|
||||
|
||||
Get a photo by id
|
||||
@ -71,7 +74,7 @@ def sync_detailed(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Response[Union[Any, File, HTTPValidationError]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
@ -91,7 +94,7 @@ def sync(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Optional[Union[Any, HTTPValidationError]]:
|
||||
) -> Optional[Union[Any, File, HTTPValidationError]]:
|
||||
"""Photo Get
|
||||
|
||||
Get a photo by id
|
||||
@ -104,7 +107,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, File, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -117,7 +120,7 @@ async def asyncio_detailed(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Response[Union[Any, HTTPValidationError]]:
|
||||
) -> Response[Union[Any, File, HTTPValidationError]]:
|
||||
"""Photo Get
|
||||
|
||||
Get a photo by id
|
||||
@ -130,7 +133,7 @@ async def asyncio_detailed(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Response[Union[Any, File, HTTPValidationError]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
@ -148,7 +151,7 @@ async def asyncio(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Optional[Union[Any, HTTPValidationError]]:
|
||||
) -> Optional[Union[Any, File, HTTPValidationError]]:
|
||||
"""Photo Get
|
||||
|
||||
Get a photo by id
|
||||
@ -161,7 +164,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, File, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -31,6 +31,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -50,7 +51,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -119,7 +120,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -182,7 +183,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -32,6 +32,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -51,7 +52,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -122,7 +123,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, PhotoPublic]]
|
||||
Union[Any, HTTPValidationError, PhotoPublic]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -185,7 +186,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, PhotoPublic]]
|
||||
Union[Any, HTTPValidationError, PhotoPublic]
|
||||
"""
|
||||
|
||||
return (
|
@ -32,6 +32,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -51,7 +52,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -122,7 +123,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, PhotoPublic]]
|
||||
Union[Any, HTTPValidationError, PhotoPublic]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -185,7 +186,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, PhotoPublic]]
|
||||
Union[Any, HTTPValidationError, PhotoPublic]
|
||||
"""
|
||||
|
||||
return (
|
@ -0,0 +1,216 @@
|
||||
from http import HTTPStatus
|
||||
from typing import Any, Dict, Optional, Union, cast
|
||||
|
||||
import httpx
|
||||
|
||||
from ... import errors
|
||||
from ...client import AuthenticatedClient, Client
|
||||
from ...models.http_validation_error import HTTPValidationError
|
||||
from ...models.random_search_results_photo import RandomSearchResultsPhoto
|
||||
from ...types import UNSET, Response, Unset
|
||||
|
||||
|
||||
def _get_kwargs(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Dict[str, Any]:
|
||||
url = "{}/albums/{album}/photos/random".format(client.base_url, album=album)
|
||||
|
||||
headers: Dict[str, str] = client.get_headers()
|
||||
cookies: Dict[str, Any] = client.get_cookies()
|
||||
|
||||
params: Dict[str, Any] = {}
|
||||
params["caption"] = caption
|
||||
|
||||
params["limit"] = limit
|
||||
|
||||
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
||||
|
||||
return {
|
||||
"method": "get",
|
||||
"url": url,
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
|
||||
def _parse_response(
|
||||
*, client: Client, response: httpx.Response
|
||||
) -> Optional[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]:
|
||||
if response.status_code == HTTPStatus.OK:
|
||||
response_200 = RandomSearchResultsPhoto.from_dict(response.json())
|
||||
|
||||
return response_200
|
||||
if response.status_code == HTTPStatus.BAD_REQUEST:
|
||||
response_400 = cast(Any, None)
|
||||
return response_400
|
||||
if response.status_code == HTTPStatus.NOT_FOUND:
|
||||
response_404 = cast(Any, None)
|
||||
return response_404
|
||||
if response.status_code == HTTPStatus.UNPROCESSABLE_ENTITY:
|
||||
response_422 = HTTPValidationError.from_dict(response.json())
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
|
||||
def _build_response(
|
||||
*, client: Client, response: httpx.Response
|
||||
) -> Response[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]:
|
||||
return Response(
|
||||
status_code=HTTPStatus(response.status_code),
|
||||
content=response.content,
|
||||
headers=response.headers,
|
||||
parsed=_parse_response(client=client, response=response),
|
||||
)
|
||||
|
||||
|
||||
def sync_detailed(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Response[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]:
|
||||
"""Photo Random
|
||||
|
||||
Get one random photo, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
)
|
||||
|
||||
response = httpx.request(
|
||||
verify=client.verify_ssl,
|
||||
**kwargs,
|
||||
)
|
||||
|
||||
return _build_response(client=client, response=response)
|
||||
|
||||
|
||||
def sync(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Optional[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]:
|
||||
"""Photo Random
|
||||
|
||||
Get one random photo, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Union[Any, HTTPValidationError, RandomSearchResultsPhoto]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
).parsed
|
||||
|
||||
|
||||
async def asyncio_detailed(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Response[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]:
|
||||
"""Photo Random
|
||||
|
||||
Get one random photo, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
)
|
||||
|
||||
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
|
||||
response = await _client.request(**kwargs)
|
||||
|
||||
return _build_response(client=client, response=response)
|
||||
|
||||
|
||||
async def asyncio(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Optional[Union[Any, HTTPValidationError, RandomSearchResultsPhoto]]:
|
||||
"""Photo Random
|
||||
|
||||
Get one random photo, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Union[Any, HTTPValidationError, RandomSearchResultsPhoto]
|
||||
"""
|
||||
|
||||
return (
|
||||
await asyncio_detailed(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
)
|
||||
).parsed
|
@ -42,6 +42,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"files": multipart_multipart_data,
|
||||
"params": params,
|
||||
}
|
||||
@ -63,7 +64,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -147,7 +148,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, Photo]]
|
||||
Union[Any, HTTPValidationError, Photo]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -228,7 +229,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, Photo]]
|
||||
Union[Any, HTTPValidationError, Photo]
|
||||
"""
|
||||
|
||||
return (
|
@ -31,6 +31,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -47,7 +48,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -112,7 +113,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -171,7 +172,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -31,6 +31,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -47,7 +48,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -112,7 +113,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -171,7 +172,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -26,6 +26,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"data": form_data.to_dict(),
|
||||
}
|
||||
|
||||
@ -42,7 +43,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -96,7 +97,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -143,7 +144,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -26,6 +26,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"data": form_data.to_dict(),
|
||||
}
|
||||
|
||||
@ -42,7 +43,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -96,7 +97,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -143,7 +144,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -24,6 +24,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
}
|
||||
|
||||
|
||||
@ -33,7 +34,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Use
|
||||
|
||||
return response_200
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -84,7 +85,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[User]
|
||||
User
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -127,7 +128,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[User]
|
||||
User
|
||||
"""
|
||||
|
||||
return (
|
@ -25,6 +25,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
}
|
||||
|
||||
|
||||
@ -40,7 +41,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -104,7 +105,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -161,7 +162,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -15,6 +15,7 @@ def _get_kwargs(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
) -> Dict[str, Any]:
|
||||
@ -28,6 +29,8 @@ def _get_kwargs(
|
||||
|
||||
params["caption"] = caption
|
||||
|
||||
params["token"] = token
|
||||
|
||||
params["page"] = page
|
||||
|
||||
params["page_size"] = page_size
|
||||
@ -40,6 +43,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -52,6 +56,9 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
if response.status_code == HTTPStatus.BAD_REQUEST:
|
||||
response_400 = cast(Any, None)
|
||||
return response_400
|
||||
if response.status_code == HTTPStatus.UNAUTHORIZED:
|
||||
response_401 = cast(Any, None)
|
||||
return response_401
|
||||
if response.status_code == HTTPStatus.NOT_FOUND:
|
||||
response_404 = cast(Any, None)
|
||||
return response_404
|
||||
@ -59,7 +66,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
response_422 = cast(Any, None)
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -79,17 +86,19 @@ def sync_detailed(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
) -> Response[Union[Any, SearchResultsVideo]]:
|
||||
"""Video Find
|
||||
|
||||
Find a video by filename
|
||||
Find a video by filename, caption or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
@ -106,6 +115,7 @@ def sync_detailed(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
)
|
||||
@ -124,17 +134,19 @@ def sync(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
) -> Optional[Union[Any, SearchResultsVideo]]:
|
||||
"""Video Find
|
||||
|
||||
Find a video by filename
|
||||
Find a video by filename, caption or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
@ -143,7 +155,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, SearchResultsVideo]]
|
||||
Union[Any, SearchResultsVideo]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -151,6 +163,7 @@ def sync(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
).parsed
|
||||
@ -162,17 +175,19 @@ async def asyncio_detailed(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
) -> Response[Union[Any, SearchResultsVideo]]:
|
||||
"""Video Find
|
||||
|
||||
Find a video by filename
|
||||
Find a video by filename, caption or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
@ -189,6 +204,7 @@ async def asyncio_detailed(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
)
|
||||
@ -205,17 +221,19 @@ async def asyncio(
|
||||
client: AuthenticatedClient,
|
||||
q: Union[Unset, None, str] = UNSET,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
token: Union[Unset, None, str] = UNSET,
|
||||
page: Union[Unset, None, int] = 1,
|
||||
page_size: Union[Unset, None, int] = 100,
|
||||
) -> Optional[Union[Any, SearchResultsVideo]]:
|
||||
"""Video Find
|
||||
|
||||
Find a video by filename
|
||||
Find a video by filename, caption or token
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
q (Union[Unset, None, str]):
|
||||
caption (Union[Unset, None, str]):
|
||||
token (Union[Unset, None, str]):
|
||||
page (Union[Unset, None, int]): Default: 1.
|
||||
page_size (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
@ -224,7 +242,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, SearchResultsVideo]]
|
||||
Union[Any, SearchResultsVideo]
|
||||
"""
|
||||
|
||||
return (
|
||||
@ -233,6 +251,7 @@ async def asyncio(
|
||||
client=client,
|
||||
q=q,
|
||||
caption=caption,
|
||||
token=token,
|
||||
page=page,
|
||||
page_size=page_size,
|
||||
)
|
@ -1,4 +1,5 @@
|
||||
from http import HTTPStatus
|
||||
from io import BytesIO
|
||||
from typing import Any, Dict, Optional, Union, cast
|
||||
|
||||
import httpx
|
||||
@ -6,7 +7,7 @@ import httpx
|
||||
from ... import errors
|
||||
from ...client import AuthenticatedClient, Client
|
||||
from ...models.http_validation_error import HTTPValidationError
|
||||
from ...types import Response
|
||||
from ...types import File, Response
|
||||
|
||||
|
||||
def _get_kwargs(
|
||||
@ -25,12 +26,14 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
}
|
||||
|
||||
|
||||
def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[Any, HTTPValidationError]]:
|
||||
def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Union[Any, File, HTTPValidationError]]:
|
||||
if response.status_code == HTTPStatus.OK:
|
||||
response_200 = cast(Any, response.json())
|
||||
response_200 = File(payload=BytesIO(response.content))
|
||||
|
||||
return response_200
|
||||
if response.status_code == HTTPStatus.NOT_FOUND:
|
||||
response_404 = cast(Any, None)
|
||||
@ -40,12 +43,12 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
|
||||
def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[Any, HTTPValidationError]]:
|
||||
def _build_response(*, client: Client, response: httpx.Response) -> Response[Union[Any, File, HTTPValidationError]]:
|
||||
return Response(
|
||||
status_code=HTTPStatus(response.status_code),
|
||||
content=response.content,
|
||||
@ -58,7 +61,7 @@ def sync_detailed(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Response[Union[Any, HTTPValidationError]]:
|
||||
) -> Response[Union[Any, File, HTTPValidationError]]:
|
||||
"""Video Get
|
||||
|
||||
Get a video by id
|
||||
@ -71,7 +74,7 @@ def sync_detailed(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Response[Union[Any, File, HTTPValidationError]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
@ -91,7 +94,7 @@ def sync(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Optional[Union[Any, HTTPValidationError]]:
|
||||
) -> Optional[Union[Any, File, HTTPValidationError]]:
|
||||
"""Video Get
|
||||
|
||||
Get a video by id
|
||||
@ -104,7 +107,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, File, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -117,7 +120,7 @@ async def asyncio_detailed(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Response[Union[Any, HTTPValidationError]]:
|
||||
) -> Response[Union[Any, File, HTTPValidationError]]:
|
||||
"""Video Get
|
||||
|
||||
Get a video by id
|
||||
@ -130,7 +133,7 @@ async def asyncio_detailed(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Response[Union[Any, File, HTTPValidationError]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
@ -148,7 +151,7 @@ async def asyncio(
|
||||
id: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
) -> Optional[Union[Any, HTTPValidationError]]:
|
||||
) -> Optional[Union[Any, File, HTTPValidationError]]:
|
||||
"""Video Get
|
||||
|
||||
Get a video by id
|
||||
@ -161,7 +164,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError]]
|
||||
Union[Any, File, HTTPValidationError]
|
||||
"""
|
||||
|
||||
return (
|
@ -32,6 +32,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -51,7 +52,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -122,7 +123,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, VideoPublic]]
|
||||
Union[Any, HTTPValidationError, VideoPublic]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -185,7 +186,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, VideoPublic]]
|
||||
Union[Any, HTTPValidationError, VideoPublic]
|
||||
"""
|
||||
|
||||
return (
|
@ -32,6 +32,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
@ -51,7 +52,7 @@ def _parse_response(
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -122,7 +123,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, VideoPublic]]
|
||||
Union[Any, HTTPValidationError, VideoPublic]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -185,7 +186,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, VideoPublic]]
|
||||
Union[Any, HTTPValidationError, VideoPublic]
|
||||
"""
|
||||
|
||||
return (
|
@ -0,0 +1,216 @@
|
||||
from http import HTTPStatus
|
||||
from typing import Any, Dict, Optional, Union, cast
|
||||
|
||||
import httpx
|
||||
|
||||
from ... import errors
|
||||
from ...client import AuthenticatedClient, Client
|
||||
from ...models.http_validation_error import HTTPValidationError
|
||||
from ...models.random_search_results_video import RandomSearchResultsVideo
|
||||
from ...types import UNSET, Response, Unset
|
||||
|
||||
|
||||
def _get_kwargs(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Dict[str, Any]:
|
||||
url = "{}/albums/{album}/videos/random".format(client.base_url, album=album)
|
||||
|
||||
headers: Dict[str, str] = client.get_headers()
|
||||
cookies: Dict[str, Any] = client.get_cookies()
|
||||
|
||||
params: Dict[str, Any] = {}
|
||||
params["caption"] = caption
|
||||
|
||||
params["limit"] = limit
|
||||
|
||||
params = {k: v for k, v in params.items() if v is not UNSET and v is not None}
|
||||
|
||||
return {
|
||||
"method": "get",
|
||||
"url": url,
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"params": params,
|
||||
}
|
||||
|
||||
|
||||
def _parse_response(
|
||||
*, client: Client, response: httpx.Response
|
||||
) -> Optional[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]:
|
||||
if response.status_code == HTTPStatus.OK:
|
||||
response_200 = RandomSearchResultsVideo.from_dict(response.json())
|
||||
|
||||
return response_200
|
||||
if response.status_code == HTTPStatus.BAD_REQUEST:
|
||||
response_400 = cast(Any, None)
|
||||
return response_400
|
||||
if response.status_code == HTTPStatus.NOT_FOUND:
|
||||
response_404 = cast(Any, None)
|
||||
return response_404
|
||||
if response.status_code == HTTPStatus.UNPROCESSABLE_ENTITY:
|
||||
response_422 = HTTPValidationError.from_dict(response.json())
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
|
||||
def _build_response(
|
||||
*, client: Client, response: httpx.Response
|
||||
) -> Response[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]:
|
||||
return Response(
|
||||
status_code=HTTPStatus(response.status_code),
|
||||
content=response.content,
|
||||
headers=response.headers,
|
||||
parsed=_parse_response(client=client, response=response),
|
||||
)
|
||||
|
||||
|
||||
def sync_detailed(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Response[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]:
|
||||
"""Video Random
|
||||
|
||||
Get one random video, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
)
|
||||
|
||||
response = httpx.request(
|
||||
verify=client.verify_ssl,
|
||||
**kwargs,
|
||||
)
|
||||
|
||||
return _build_response(client=client, response=response)
|
||||
|
||||
|
||||
def sync(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Optional[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]:
|
||||
"""Video Random
|
||||
|
||||
Get one random video, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Union[Any, HTTPValidationError, RandomSearchResultsVideo]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
).parsed
|
||||
|
||||
|
||||
async def asyncio_detailed(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Response[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]:
|
||||
"""Video Random
|
||||
|
||||
Get one random video, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]
|
||||
"""
|
||||
|
||||
kwargs = _get_kwargs(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
)
|
||||
|
||||
async with httpx.AsyncClient(verify=client.verify_ssl) as _client:
|
||||
response = await _client.request(**kwargs)
|
||||
|
||||
return _build_response(client=client, response=response)
|
||||
|
||||
|
||||
async def asyncio(
|
||||
album: str,
|
||||
*,
|
||||
client: AuthenticatedClient,
|
||||
caption: Union[Unset, None, str] = UNSET,
|
||||
limit: Union[Unset, None, int] = 100,
|
||||
) -> Optional[Union[Any, HTTPValidationError, RandomSearchResultsVideo]]:
|
||||
"""Video Random
|
||||
|
||||
Get one random video, optionally by caption
|
||||
|
||||
Args:
|
||||
album (str):
|
||||
caption (Union[Unset, None, str]):
|
||||
limit (Union[Unset, None, int]): Default: 100.
|
||||
|
||||
Raises:
|
||||
errors.UnexpectedStatus: If the server returns an undocumented status code and Client.raise_on_unexpected_status is True.
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Union[Any, HTTPValidationError, RandomSearchResultsVideo]
|
||||
"""
|
||||
|
||||
return (
|
||||
await asyncio_detailed(
|
||||
album=album,
|
||||
client=client,
|
||||
caption=caption,
|
||||
limit=limit,
|
||||
)
|
||||
).parsed
|
@ -36,6 +36,7 @@ def _get_kwargs(
|
||||
"headers": headers,
|
||||
"cookies": cookies,
|
||||
"timeout": client.get_timeout(),
|
||||
"follow_redirects": client.follow_redirects,
|
||||
"files": multipart_multipart_data,
|
||||
"params": params,
|
||||
}
|
||||
@ -54,7 +55,7 @@ def _parse_response(*, client: Client, response: httpx.Response) -> Optional[Uni
|
||||
|
||||
return response_422
|
||||
if client.raise_on_unexpected_status:
|
||||
raise errors.UnexpectedStatus(f"Unexpected status code: {response.status_code}")
|
||||
raise errors.UnexpectedStatus(response.status_code, response.content)
|
||||
else:
|
||||
return None
|
||||
|
||||
@ -128,7 +129,7 @@ def sync(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, Video]]
|
||||
Union[Any, HTTPValidationError, Video]
|
||||
"""
|
||||
|
||||
return sync_detailed(
|
||||
@ -197,7 +198,7 @@ async def asyncio(
|
||||
httpx.TimeoutException: If the request takes longer than Client.timeout.
|
||||
|
||||
Returns:
|
||||
Response[Union[Any, HTTPValidationError, Video]]
|
||||
Union[Any, HTTPValidationError, Video]
|
||||
"""
|
||||
|
||||
return (
|
@ -18,6 +18,7 @@ class Client:
|
||||
but can be set to False for testing purposes.
|
||||
raise_on_unexpected_status: Whether or not to raise an errors.UnexpectedStatus if the API returns a
|
||||
status code that was not documented in the source OpenAPI document.
|
||||
follow_redirects: Whether or not to follow redirects. Default value is False.
|
||||
"""
|
||||
|
||||
base_url: str
|
||||
@ -26,6 +27,7 @@ class Client:
|
||||
timeout: float = attr.ib(5.0, kw_only=True)
|
||||
verify_ssl: Union[str, bool, ssl.SSLContext] = attr.ib(True, kw_only=True)
|
||||
raise_on_unexpected_status: bool = attr.ib(False, kw_only=True)
|
||||
follow_redirects: bool = attr.ib(False, kw_only=True)
|
||||
|
||||
def get_headers(self) -> Dict[str, str]:
|
||||
"""Get headers to be used in all endpoints"""
|
@ -4,7 +4,11 @@
|
||||
class UnexpectedStatus(Exception):
|
||||
"""Raised by api functions when the response status an undocumented status and Client.raise_on_unexpected_status is True"""
|
||||
|
||||
...
|
||||
def __init__(self, status_code: int, content: bytes):
|
||||
self.status_code = status_code
|
||||
self.content = content
|
||||
|
||||
super().__init__(f"Unexpected status code: {status_code}")
|
||||
|
||||
|
||||
__all__ = ["UnexpectedStatus"]
|
@ -11,6 +11,8 @@ from .http_validation_error import HTTPValidationError
|
||||
from .photo import Photo
|
||||
from .photo_public import PhotoPublic
|
||||
from .photo_search import PhotoSearch
|
||||
from .random_search_results_photo import RandomSearchResultsPhoto
|
||||
from .random_search_results_video import RandomSearchResultsVideo
|
||||
from .search_results_album import SearchResultsAlbum
|
||||
from .search_results_photo import SearchResultsPhoto
|
||||
from .search_results_video import SearchResultsVideo
|
||||
@ -33,6 +35,8 @@ __all__ = (
|
||||
"Photo",
|
||||
"PhotoPublic",
|
||||
"PhotoSearch",
|
||||
"RandomSearchResultsPhoto",
|
||||
"RandomSearchResultsVideo",
|
||||
"SearchResultsAlbum",
|
||||
"SearchResultsPhoto",
|
||||
"SearchResultsVideo",
|
72
photosapi_client/models/random_search_results_photo.py
Normal file
72
photosapi_client/models/random_search_results_photo.py
Normal file
@ -0,0 +1,72 @@
|
||||
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
||||
|
||||
import attr
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..models.photo_search import PhotoSearch
|
||||
|
||||
|
||||
T = TypeVar("T", bound="RandomSearchResultsPhoto")
|
||||
|
||||
|
||||
@attr.s(auto_attribs=True)
|
||||
class RandomSearchResultsPhoto:
|
||||
"""
|
||||
Attributes:
|
||||
results (List['PhotoSearch']):
|
||||
"""
|
||||
|
||||
results: List["PhotoSearch"]
|
||||
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
||||
|
||||
def to_dict(self) -> Dict[str, Any]:
|
||||
results = []
|
||||
for results_item_data in self.results:
|
||||
results_item = results_item_data.to_dict()
|
||||
|
||||
results.append(results_item)
|
||||
|
||||
field_dict: Dict[str, Any] = {}
|
||||
field_dict.update(self.additional_properties)
|
||||
field_dict.update(
|
||||
{
|
||||
"results": results,
|
||||
}
|
||||
)
|
||||
|
||||
return field_dict
|
||||
|
||||
@classmethod
|
||||
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
||||
from ..models.photo_search import PhotoSearch
|
||||
|
||||
d = src_dict.copy()
|
||||
results = []
|
||||
_results = d.pop("results")
|
||||
for results_item_data in _results:
|
||||
results_item = PhotoSearch.from_dict(results_item_data)
|
||||
|
||||
results.append(results_item)
|
||||
|
||||
random_search_results_photo = cls(
|
||||
results=results,
|
||||
)
|
||||
|
||||
random_search_results_photo.additional_properties = d
|
||||
return random_search_results_photo
|
||||
|
||||
@property
|
||||
def additional_keys(self) -> List[str]:
|
||||
return list(self.additional_properties.keys())
|
||||
|
||||
def __getitem__(self, key: str) -> Any:
|
||||
return self.additional_properties[key]
|
||||
|
||||
def __setitem__(self, key: str, value: Any) -> None:
|
||||
self.additional_properties[key] = value
|
||||
|
||||
def __delitem__(self, key: str) -> None:
|
||||
del self.additional_properties[key]
|
||||
|
||||
def __contains__(self, key: str) -> bool:
|
||||
return key in self.additional_properties
|
72
photosapi_client/models/random_search_results_video.py
Normal file
72
photosapi_client/models/random_search_results_video.py
Normal file
@ -0,0 +1,72 @@
|
||||
from typing import TYPE_CHECKING, Any, Dict, List, Type, TypeVar
|
||||
|
||||
import attr
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..models.video_search import VideoSearch
|
||||
|
||||
|
||||
T = TypeVar("T", bound="RandomSearchResultsVideo")
|
||||
|
||||
|
||||
@attr.s(auto_attribs=True)
|
||||
class RandomSearchResultsVideo:
|
||||
"""
|
||||
Attributes:
|
||||
results (List['VideoSearch']):
|
||||
"""
|
||||
|
||||
results: List["VideoSearch"]
|
||||
additional_properties: Dict[str, Any] = attr.ib(init=False, factory=dict)
|
||||
|
||||
def to_dict(self) -> Dict[str, Any]:
|
||||
results = []
|
||||
for results_item_data in self.results:
|
||||
results_item = results_item_data.to_dict()
|
||||
|
||||
results.append(results_item)
|
||||
|
||||
field_dict: Dict[str, Any] = {}
|
||||
field_dict.update(self.additional_properties)
|
||||
field_dict.update(
|
||||
{
|
||||
"results": results,
|
||||
}
|
||||
)
|
||||
|
||||
return field_dict
|
||||
|
||||
@classmethod
|
||||
def from_dict(cls: Type[T], src_dict: Dict[str, Any]) -> T:
|
||||
from ..models.video_search import VideoSearch
|
||||
|
||||
d = src_dict.copy()
|
||||
results = []
|
||||
_results = d.pop("results")
|
||||
for results_item_data in _results:
|
||||
results_item = VideoSearch.from_dict(results_item_data)
|
||||
|
||||
results.append(results_item)
|
||||
|
||||
random_search_results_video = cls(
|
||||
results=results,
|
||||
)
|
||||
|
||||
random_search_results_video.additional_properties = d
|
||||
return random_search_results_video
|
||||
|
||||
@property
|
||||
def additional_keys(self) -> List[str]:
|
||||
return list(self.additional_properties.keys())
|
||||
|
||||
def __getitem__(self, key: str) -> Any:
|
||||
return self.additional_properties[key]
|
||||
|
||||
def __setitem__(self, key: str, value: Any) -> None:
|
||||
self.additional_properties[key] = value
|
||||
|
||||
def __delitem__(self, key: str) -> None:
|
||||
del self.additional_properties[key]
|
||||
|
||||
def __contains__(self, key: str) -> bool:
|
||||
return key in self.additional_properties
|
@ -1,12 +1,12 @@
|
||||
""" Contains some shared types for properties """
|
||||
from http import HTTPStatus
|
||||
from typing import BinaryIO, Generic, MutableMapping, Optional, Tuple, TypeVar
|
||||
from typing import BinaryIO, Generic, Literal, MutableMapping, Optional, Tuple, TypeVar
|
||||
|
||||
import attr
|
||||
|
||||
|
||||
class Unset:
|
||||
def __bool__(self) -> bool:
|
||||
def __bool__(self) -> Literal[False]:
|
||||
return False
|
||||
|
||||
|
6
setup.py
6
setup.py
@ -7,12 +7,12 @@ long_description = (here / "README.md").read_text(encoding="utf-8")
|
||||
|
||||
setup(
|
||||
name="PhotosAPI_Client",
|
||||
version="0.1",
|
||||
description="A client library for accessing END PLAY Photos",
|
||||
version="0.5.0",
|
||||
description="A client library for accessing Photos API",
|
||||
long_description=long_description,
|
||||
long_description_content_type="text/markdown",
|
||||
packages=find_packages(),
|
||||
python_requires=">=3.7, <4",
|
||||
install_requires=["httpx >= 0.15.0, < 0.24.0", "attrs >= 21.3.0", "python-dateutil >= 2.8.0, < 3"],
|
||||
package_data={"PhotosAPI_Client": ["py.typed"]},
|
||||
package_data={"photosapi_client": ["py.typed"]},
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user