Votes

class VotesService(client: VotesClient)

Service class for votes

Developers has option to use this service directly or use the Fider client.

create_vote(request: CreateVoteRequest) FiderAPIResponse[dict]

When casting a vote upon a post, the vote is registered under the current authenticated user. Impersonate another user to vote on behalf of them.

Example:

>>> from fiderpy.v1.resources.votes import request
>>> from fiderpy.v1.resources.votes.service import VotesService

>>> service = VotesService(client=VotesClient(http=http))
>>> request = CreateVoteRequest(number=1)
>>> response = service.create_vote(request=request)
>>> response
FiderAPIResponse(
    message="Successfully created vote!",
    data={},
    errors=None
)
Parameters:

requestfiderpy.v1.resources.votes.request.CreateVoteRequest

Returns:

fiderpy.v1.utils.domain.FiderAPIResponse

delete_vote(request: DeleteVoteRequest) FiderAPIResponse[dict]

When removing the vote from a post, the vote is removed from the current authenticated user. Impersonate another user to remove votes on behalf of them.

Example:

>>> from fiderpy.v1.resources.votes import request
>>> from fiderpy.v1.resources.votes.service import VotesService

>>> service = VotesService(client=VotesClient(http=http))
>>> request = DeleteVoteRequest(number=1)
>>> response = service.delete_vote(request=request)
>>> response
FiderAPIResponse(
    message="Successfully deleted vote!",
    data={},
    errors=None
)
Parameters:

requestfiderpy.v1.resources.votes.request.DeleteVoteRequest

Returns:

fiderpy.v1.utils.domain.FiderAPIResponse

get_votes(request: GetVotesRequest) FiderAPIResponse[list[Vote]]

Get all votes for a post

Example:

>>> from fiderpy.v1.resources.votes import request
>>> from fiderpy.v1.resources.votes.service import VotesService

>>> service = VotesService(client=VotesClient(http=http))
>>> request = GetVotesRequest(number=1)
>>> response = service.get_votes(request=request)
>>> response
FiderAPIResponse(
    message="Successfully fetched data.",
    data=[
        Vote(
            id=1,
            user=User(
                id=1,
                name="John Doe",
                role="user"
            ),
            created_at="2021-01-01T00:00:00Z"
        ),
    ],
    errors=None
)
Parameters:

requestfiderpy.v1.resources.votes.request.GetVotesRequest

Returns:

fiderpy.v1.utils.domain.FiderAPIResponse