Toloka documentation

create_user_bonuses

toloka.client.TolokaClient.create_user_bonuses

Creates many user bonuses

Right now it's safer to use asynchronous version: "create_user_bonuses_async" You can send a maximum of 10,000 requests of this kind per day.

Parameters Description

Parameters Type Description
user_bonuses List[UserBonus]

To whom, how much to pay and for what.

operation_id Optional[str]

Operation ID. If asynchronous creation is used, by this identifier you can later get results of creating bonuses.

skip_invalid_items Optional[bool]

Validation parameters of objects:

  • True - Award a bonus if the object with bonus information passed validation. Otherwise, skip the bonus.
  • False - Default behaviour. Stop the operation and don't award bonuses if at least one object didn't pass validation.

  • Returns:

    Result of user bonuses creating. Contains created user bonuses in items and problems in "validation_errors".

  • Return type:

    UserBonusBatchCreateResult

Examples:

import decimal
new_bonuses=[
    UserBonus(
        user_id='1',
        amount=decimal.Decimal('0.50'),
        public_title={
            'EN': 'Perfect job!',
            'RU': 'Прекрасная работа!',
        },
        public_message={
            'EN': 'You are the best performer!',
            'RU': 'Молодец!',
        },
        assignment_id='1'),
    UserBonus(
        user_id='2',
        amount=decimal.Decimal('1.0'),
        public_title={
            'EN': 'Excellent work!',
            'RU': 'Отличная работа!',
        },
        public_message={
            'EN': 'You have completed all tasks!',
            'RU': 'Сделаны все задания!',
        },
        assignment_id='2')
]
toloka_client.create_user_bonuses(new_bonuses)