Source code for aioyookassa.core.api.self_employed

from typing import Union

from aioyookassa.core.api.base import BaseAPI
from aioyookassa.core.methods.self_employed import CreateSelfEmployed, GetSelfEmployed
from aioyookassa.types.params import CreateSelfEmployedParams
from aioyookassa.types.payout import SelfEmployed


[docs] class SelfEmployedAPI(BaseAPI[CreateSelfEmployedParams, SelfEmployed]): """ YooKassa self-employed API client. Provides methods for creating and retrieving self-employed persons. """
[docs] async def create_self_employed( self, params: CreateSelfEmployedParams, ) -> SelfEmployed: """ Create a new self-employed in YooKassa. :param params: Self-employed creation parameters (CreateSelfEmployedParams). :type params: CreateSelfEmployedParams :returns: SelfEmployed object. :rtype: SelfEmployed :seealso: https://yookassa.ru/developers/api#create_self_employed Example: >>> from aioyookassa.types.params import ( ... CreateSelfEmployedParams, ... SelfEmployedConfirmationData ... ) >>> params = CreateSelfEmployedParams( ... itn="123456789012", ... confirmation=SelfEmployedConfirmationData( ... confirmation_url="https://example.com/confirm" ... ) ... ) >>> self_employed = await client.self_employed.create_self_employed(params) """ return await self._create_resource( params=params, params_class=CreateSelfEmployedParams, method_class=CreateSelfEmployed, result_class=SelfEmployed, )
[docs] async def get_self_employed(self, self_employed_id: str) -> SelfEmployed: """ Retrieve self-employed information by self-employed ID. :param self_employed_id: Self-employed identifier. :type self_employed_id: str :returns: SelfEmployed object. :rtype: SelfEmployed :seealso: https://yookassa.ru/developers/api#get_self_employed """ return await self._get_by_id( resource_id=self_employed_id, method_class=GetSelfEmployed, result_class=SelfEmployed, id_param_name="self_employed_id", )