def api_update()

in facebook_business/adobjects/livevideo.py [0:0]


    def api_update(self, fields=None, params=None, batch=None, success=None, failure=None, pending=False):
        from facebook_business.utils import api_utils
        if batch is None and (success is not None or failure is not None):
          api_utils.warning('`success` and `failure` callback only work for batch call.')
        param_types = {
            'allow_bm_crossposting': 'bool',
            'content_tags': 'list<string>',
            'cross_share_to_group_ids': 'list<string>',
            'crossposting_actions': 'list<map>',
            'custom_labels': 'list<string>',
            'description': 'string',
            'direct_share_status': 'unsigned int',
            'embeddable': 'bool',
            'end_live_video': 'bool',
            'is_audio_only': 'bool',
            'is_manual_mode': 'bool',
            'live_comment_moderation_setting': 'list<live_comment_moderation_setting_enum>',
            'master_ingest_stream_id': 'string',
            'og_icon_id': 'string',
            'og_phrase': 'string',
            'persistent_stream_key_status': 'persistent_stream_key_status_enum',
            'place': 'Object',
            'planned_start_time': 'datetime',
            'privacy': 'string',
            'published': 'bool',
            'schedule_custom_profile_image': 'file',
            'schedule_feed_background_image': 'file',
            'sponsor_id': 'string',
            'sponsor_relationship': 'unsigned int',
            'status': 'status_enum',
            'stream_type': 'stream_type_enum',
            'tags': 'list<int>',
            'targeting': 'Object',
            'title': 'string',
        }
        enums = {
            'live_comment_moderation_setting_enum': LiveVideo.LiveCommentModerationSetting.__dict__.values(),
            'persistent_stream_key_status_enum': LiveVideo.PersistentStreamKeyStatus.__dict__.values(),
            'status_enum': LiveVideo.Status.__dict__.values(),
            'stream_type_enum': LiveVideo.StreamType.__dict__.values(),
        }
        request = FacebookRequest(
            node_id=self['id'],
            method='POST',
            endpoint='/',
            api=self._api,
            param_checker=TypeChecker(param_types, enums),
            target_class=LiveVideo,
            api_type='NODE',
            response_parser=ObjectParser(reuse_object=self),
        )
        request.add_params(params)
        request.add_fields(fields)

        if batch is not None:
            request.add_to_batch(batch, success=success, failure=failure)
            return request
        elif pending:
            return request
        else:
            self.assure_call()
            return request.execute()