Source code for etoropy.rest.feeds

from __future__ import annotations

from typing import Any

from ..config.constants import API_PREFIX
from ._base import BaseRestClient


[docs] class FeedsClient(BaseRestClient):
[docs] async def create_post(self, content: str, instrument_id: int | None = None) -> Any: body: dict[str, Any] = {"content": content} if instrument_id is not None: body["instrumentId"] = instrument_id return await self._post(f"{API_PREFIX}/feeds/posts", body)
[docs] async def get_instrument_feed( self, instrument_id: int, *, take: int | None = None, offset: int | None = None, ) -> Any: query: dict[str, Any] = {} if take is not None: query["take"] = take if offset is not None: query["offset"] = offset return await self._get(f"{API_PREFIX}/feeds/instrument/{instrument_id}", query or None)
[docs] async def get_user_feed( self, user_id: int, *, requester_user_id: int | str | None = None, take: int | None = None, offset: int | None = None, ) -> Any: query: dict[str, Any] = {} if requester_user_id is not None: query["requesterUserId"] = requester_user_id if take is not None: query["take"] = take if offset is not None: query["offset"] = offset return await self._get(f"{API_PREFIX}/feeds/user/{user_id}", query or None)