Code: Select all
# /src/minim/api/spotify/_core.py
... # other imports
from .._shared import OAuth2API
from ._web_api.users import UserEndpoints
class WebAPI(OAuth2API):
"""
Spotify Web API client.
"""
def __init__(self, ...) -> None:
"""
Parameters
----------
...
"""
self.users = UserEndpoints(self)
... # other logic
def some_method(self) -> None:
"""
Do nothing.
"""
pass
... # other methods
Code: Select all
# /src/minim/api/spotify/__init__.py
from ._core import WebAPI
__all__ = ["WebAPI"]
< /code>
UserEndpoints
"""
Parameters
----------
...
"""
self._client = client
def get_me(self) -> dict[str, Any]:
"""
...
"""
self._client._require_scope(
"get_me", {"user-read-private", "user-read-email"}
)
return self._client._request("get", "me").json()
< /code>
Currently, Sphinx autosummary generates a page for WebAPI[/code] und alle seine Methoden. Ist es möglich, Sphinx zu haben, die die Methoden von UserSendpoint integrieren.
Code: Select all
class minim.api.spotify.WebAPI(...)
Spotify Web API client.
Parameters:
...
Methods:
some_method | Do nothing.
users.get_me | ...
some_method(...) -> None
Do nothing.
Parameters:
...
users.get_me(...) -> dict[str, Any]
...
Parameters:
...